Вы находитесь на странице: 1из 2

Лекции курса PHP7 + MySQL с нуля

(краткое содержание)

ЛЕКЦИЯ 9. ВЫРАЖЕНИЯ И ОПЕРАЦИИ В PHP. ЛОГИЧЕСКИЕ


ВЫРАЖЕНИЯ

Выражения
Выражения в PHP являются основой написания программного кода.
Выражение – некая сущность программного кода, имеющее определенное
значение. Для понятия «выражения» действует и обратное определение – если у
какой-либо сущность в программном коде есть значение, то эта сущность и есть
«выражение».
Самый простой пример выражения – операция присвоения:
$var = 10;
Вот более сложный пример выражения:
$var1 = 10 * $var2 + ($var3 = ($var4 = 15));
Если описать это выражение в более простых формах, то будет следующий
вид:
$var4 = 15;
$var3 = $var4;
$var1 = 10 * $var2 + $var3;
Таким образом мы видим, что в PHP возможно создание сложных выражений,
в которых определение значений, составляющих выражения возможно в процессе
вычисления результата выражения.
Кроме того, у любого выражения есть тип, определяющий его значение.

Логические выражения
Из простых выражений в PHP стоит отдельно выделить логические
выражения, в результате которых возвращается тип boolean и значения true или
false.
Рассмотрим варианты таких выражений:
- $a < $b
Логическое выражение «меньше», хорошо знакомое по урокам
математики из школьного курса. В данном случае результат сравнение
принимает true, если значение $a меньше значения $b.
- $b > $c
Логическое выражение «больше». Противоположно по смыслу значению
«меньше»
- $a <= $b
Логическое выражение «меньше или равно». Отличается от «меньше»
тем, что результат true может возникнуть и в случае, если $a окажется
равным $b.
- $b >= $c
Выражение «больше или равно». Прямая противоположность «меньше
или равно» с учетом результата true, если $b равно $c.
- $a <=> $d
Логическое выражение сравнения двух переменных. Возвращает -1, в
случае, если $a меньше $d, 0, если они равно и 1, если $d больше $a.
- $c == $d
Логическое выражение «равно». Принимает значение true, если $c равно
$d. Стоит отметить, что оператор «==» в некоторых случаях приводит к
сравнению только абсолютных значений переменных, но не их типов и

1
Лекции курса PHP7 + MySQL с нуля
(краткое содержание)

содержания (например, в строках или массивах). В случае, если


необходимо сравнить такие переменные по абсолютному их значению,
необходимо воспользоваться оператором «эквивалентности»,
описанным далее в этом уроке. Например, при $c = 10, а $d = “10”,
выражение $c == $d вернет значение true, тогда как выражение
эквивалентности $c === $d вернет false, т. к. $c имеет integer-тип, а $d –
string.
- $b != $d
Логическое выражение «не равно». Противоположно по смыслу
выражению «равно». Аналогично этому выражению сравнивает значения
переменных только по абсолютным значениям. Для полного сравнения
переменных необходимо использовать оператор «не эквивалентно»
- $c === $d
Логическое выражение «эквивалентно». В отличии от выражения
«равно», принимает значение true, только если $c полностью идентично
$d, например, в случае если обе переменные содержат строки и значения
этих строк полностью идентичны.
- $b !== $d
Логическое выражение «не эквивалентно». Противоположно по смыслу
выражению «эквивалентно», но принимает true, если один параметр не
эквивалентен другому.
- $a && $b
Логическое выражение «И». Принимает true, когда во всех параметрах
выражения выполняются условия. Если хотя бы в одном из параметров
условие не выполнено – возвращается false. Есть синоним этого
выражения: $a and $b. Отличается такое выражение только приоритетом
перед другими операциями внутри выражения (оператор && имеет более
высокий приоритет по сравнению математическими операциями).
- $b || $a
Логическое выражение «ИЛИ». Принимает true, если хотя бы один из
параметров выполняет условия. Аналогично оператору && имеет
синоним с более низким приоритетом or.