Операторы инкремента и декремента в PHP
Операторы инкремента и декремента — операторы PHP, аналогичные таковым в Си. Поддерживают префиксные и постфиксные операторы инкремента и декремента.
Пример | Название | Действие |
---|---|---|
Префиксный инкремент | Увеличивает $a на единицу и возвращает значение $a. | |
$a++ | Постфиксный инкремент | Возвращает значение $a, а затем увеличивает $a на единицу. |
Префиксный декремент | Уменьшает $a на единицу и возвращает значение $a. | |
$a-- | Постфиксный декремент | Возвращает значение $a, а затем уменьшает $a на единицу. |
Содержание |
[править] Постфиксные операторы инкремента и декремента
Данные операторы предназначены для увеличения или уменьшения значения переменной, а в выражении возвращают значение переменной $a не изменяя её. Например:
<? $a=10; $b=$a++; echo "a=$a, b=$b"; // Выводит a=11, b=10 ?>
Обратите внимание, что переменная $b приняла значение $a без изменений. А переменная $a была инкрементирована. Впрочем, выражение, значение которого присваивается переменной $b, может быть и сложнее — в любом случае, инкремент $a произойдет только после его вычисления. Такие операции называют постфиксными операциями инкремента.
[править] Префиксные операторы инкремента и декремента
Префиксные операторы инкремента и декремента указываются до имени переменной, а не после. Соответственно и возвращают они значение уже изменённой переменной Например:
<? $a=10; $b=--$a; echo "a=$a, b=$b"; // Выводит a=9, b=9 ?>
Инкрементирование или декрементирование булевых переменных не приводит ни к какому результату.
[править] Где используется
Операции инкремента и декремента на практике применяются очень часто. Например, они встречаются практически в любом цикле for.
<?phpecho "
Постфиксный инкремент
";$a = 5; echo "Должно быть 5: " . $a++ . "echo "
\n"; echo "Должно быть 6: " . $a . "
\n";
Префиксный инкремент
";$a = 5; echo "Должно быть 6: " . ++$a . "echo "
\n"; echo "Должно быть 6: " . $a . "
\n";
Постфиксный декремент
";$a = 5; echo "Должно быть 5: " . $a-- . "echo "
\n"; echo "Должно быть 4: " . $a . "
\n";
Префиксный декремент
";$a = 5; echo "Должно быть 4: " . --$a . "
\n"; echo "Должно быть 4: " . $a . "
\n"; ?>
[править] Операции с символьными переменными
<?php $i = 'W'; for($n=0; $n<6; $n++) echo ++$i . "\n"; /* Результат работы будет следующий: X Y Z AA AB AC */ ?>
[править] Ссылки
Операторы инкремента и декремента в PHP относится к теме «PHP» |