Piccola domanda su ++ e -- operatori di incremento/decremento

otto9due

Utente Attivo
22 Feb 2014
591
25
28
Guardate il codice seguente e gli output, perché questi risultati?

PHP:
<?php
$data = 3;

echo 'Prova è "'.$data++.'" oppure "'.$data--.'"';
?>

Risultato: Prova è "3" oppure "4"

Non dovrebbe essere: Prova è "4" oppure "2" ??

Se invece lo faccio così il risultato è identico:

PHP:
<?php
$data = '3';

echo 'Prova è "'.$data++.'" oppure "'.$data--.'"';
?>

Risultato: Prova è "3" oppure "4"

Mi disorienta sta cosa :O


Solo in questo modo pare dare il risultato corretto :

PHP:
<?php
$data = '3';

echo 'Prova è "'.($data+1).'" oppure "'.($data-1).'"';
?>
Risultato: Prova è "4" oppure "2"

O anche così:

PHP:
<?php
$data = 3;

echo 'Prova è "'.($data+1).'" oppure "'.($data-1).'"';
?>
Prova è "4" oppure "2"
 
Ultima modifica:

Discussioni simili