Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше
Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике
11.5. Совмещенные выражения
Вы уже знаете, что для того чтобы увеличить значение $a на единицу, можно написать $а++ или ++$а. Если следует увеличить значение больше, чем на единицу, можно написать $а++ несколько раз, но это не очень удобно и эффективно. Намного больше распространено написание $а = $а + 3 . $а + 3 вычисляется, как значение $a плюс 3, а затем присваивается переменной $а, в результате чего значение $аувеличивается на 3. В РНР также, как и в ряде других языков типа С, можно записать это короче: $а+=3. Это значит следующее: возьми значение $а, добавь к нему 3 и присвой это обратно $а. Кроме того, что это понятнее, такой тип выражений быстрее исполняется. Значение $а+=3, как и значение обычного присваивания, — это присвоенное значение. Заметьте, что оно не равно 3, а является общим значением $a и 3. Любой бинарный (имеющий 2 операнда) оператор может быть записан таким методом, например: $а-=5 (вычесть 5 из значения $а), $b *= 7 (умножить значение $b на 7) и т. д.
Пример 11.8. Совмещенные выражения
<?
$а = 8;
$b = 6;
$c = 4;
$d = 10;
$t = 12;
$е = 14;
$а *= 2; echo $а; // умножить и присвоить
$b /= 3; echo $b; // разделить и присвоить
$с += 2; echo $с; // сложить и присвоить
$d -= 3; echo $d; // вычесть и присвоить
$t <<= 1; echo $t; // побитовый сдвиг влево на 1 бит
$е >>= 2; echo $е; // побитовый сдвиг вправо на 2 бита
?>
Думаем, не стоит объяснять полученный результат. Далее вы сможете изучить принципы данных выражений более полно на основании примеров. Подобным образом можно комбинировать присваивание с любыми операциями, если результат присваивается одному из операндов. Делать такие подстановки совершенно не обязательно — язык это позволяет, но не требует.