Operadores
PHP Manual

Operadores de incremento/decremento

PHP soporta operadores estilo C de pre- y post-incremento y decremento.

Note: Los operadores de incremento/decremento no afectan a los valores booleanos. Decrementar valores NULL tampoco tiene efecto, pero incrementarlos entonces resulta en 1.

Operadores de incremento/decremento
Ejemplo Nombre Efecto
++$a Pre-incremento Incrementa $a en uno, y luego retorna $a.
$a++ Post-incremento Retorna $a, y luego incrementa $a en uno.
--$a Pre-decremento Decrementa $a en uno, luego retorna $a.
$a-- Post-decremento Retorna $a, luego decrementa $a en uno.

Aquí hay un script simple de ejemplo:

<?php
echo "<h3>Postincremento</h3>";
$a 5;
echo 
"Debe ser 5: " $a++ . "<br />\n";
echo 
"Debe ser 6: " $a "<br />\n";

echo 
"<h3>Preincremento</h3>";
$a 5;
echo 
"Debe ser 6: " . ++$a "<br />\n";
echo 
"Debe ser 6: " $a "<br />\n";

echo 
"<h3>Postdecremento</h3>";
$a 5;
echo 
"Debe ser 5: " $a-- . "<br />\n";
echo 
"Debe ser 4: " $a "<br />\n";

echo 
"<h3>Predecremento</h3>";
$a 5;
echo 
"Debe ser 4: " . --$a "<br />\n";
echo 
"Debe ser 4: " $a "<br />\n";
?>

PHP sigue la convención de Perl cuando trabaja con operaciones aritméticas sobre variables de caracteres y no la de C. Por ejemplo, en Perl 'Z'+1 se convierte en 'AA', mientras que en C 'Z'+1 se convierte en '[' ( ord('Z') == 90, ord('[') == 91 ). Note que las variables de caracteres pueden ser incrementadas pero no decrementadas y aun así sólo caracteres de ASCII plano (a-z y A-Z) están soportados.

Example #1 Operaciones aritméticas sobre variables de caracteres

<?php
$i 
'W';
for (
$n=0$n<6$n++) {
    echo ++
$i "\n";
}
?>

El resultado del ejemplo sería:

X
Y
Z
AA
AB
AC

Incrementar o decrementar booleanos no tiene efecto.


Operadores
PHP Manual