#2. 3 php Операторы инкремента (увеличение) и декремента (уменьшение). Префиксная и постфиксная запись

Достаточно часто требуется увеличить или уменьшить значение некоторой переменной на единицу. Особенно часто это используется в циклах, что будет показано ниже в этой главе. В РНР для этого предусмотрены специальные операторы. Для увеличения значения на единицу (инкремент) предназначен оператор ++, а для уменьшения (декремент) — оператор --. Например, если переменная $bananas содержит значение 0, то после применения оператора инкремента при помощи конструкции вида $bananas++ ее значение станет равным 1. Если переменная $apples содержит значение 11, то после выполнения кода $apples-- ее значение станет равным 10.

Операторы инкремента и декремента могут быть использованы как до (префиксная запись), так и после (постфиксная запись) имени переменной. Если используется префиксная запись, например, ++$bananas, то значение переменной увеличивается, и это же значение используется как результат вычисления данного выражения. При использовании постфиксной записи, например, $bananas++, результатом вычисления выражения становится значение переменной до ее увеличения. Разница между этими двумя вариантами представлена ниже:

  • ++$value Пре-инкремент. Увеличивает значение $value на единицу и возвращает увеличенное значение.
  • $value++ Пост-инкремент. Возвращает текущее значение $value, поcле чего увеличивает значение $value на единицу.
  • --$value Пре-декремент. Уменьшает значение $value на единицу и возвращает уменьшенное значение.
  • $value-- Пост-декремент. Возвращает текущее значение $value, поcле чего уменьшает значение $value на единицу.

Пример 1. Инкремент и декремент

<HTML>
  <HEAD>
    <TITLE>Инкремент и декремент</TITLE>
  </HEAD>
  <BODY>
    <H1>Инкремент и декремент</H1>
    <?php
    $a = $b = $c = $d = 1;
    echo "\$a++ = ", $a++, "<BR>"; 
    echo "++\$b = ", ++$b, "<BR>";
    echo "\$c-- = ", $c--, "<BR>";
    echo "--\$d = ", --$d, "<BR>";
    ?>
  </BODY>
</HTML>

Результат выполнения примера:



Инкремент и декремент

Как видно, имеются различия между префиксным и постфиксным применением операторов инкремента и декремента. Если значение, возвращаемое операторами, не используется (например, при увеличении значения счетчика цикла), то не имеет значения, какую форму операторов использовать — префиксную или постфиксную.

Key Words for FKN + antitotal forum (CS VSU):

vedro-compota's picture

пояснение по примеру с инкрементом и декрементом: https://fkn.ktu10.com/?q=node/10644

_____________
матфак вгу и остальная классика =)