Оператор - это описание некоторого действия, которое интерпретатор должен сделать с указанными переменными. Операторы входят
в большинство выражений и позволяют изменять или сравнивать
значения переменных. Переменные, с которыми связан оператор, называются операндами.
Не надо путать выражения и операторы. Оператор лишь определяет необходимое действие, а выражение - это законченный маленький фрагмент программы, в который могут входить операторы, переменные, константы и т.п.
Типы операторов
- Арифметические
- Присвоения
- Битовые
- Сравнения
- Контроля ошибок
- Выполнения
- Инкремента/декремента
- Логические
- Строковые
- Операторы массивов
- Операторы типов
Операторы сравнения
PHP может сравнивать переменных двумя способами: сравнением по значению и сравнением по значению и типу.
| Название | Пример | Результат |
| Равено | $a == $b | TRUE если $a равно $b |
| Идентично | $a === $b | TRUE если $a равно $b и тип данных $a равен типу данных $b |
| Не равно | $a != $b или $a <> $b | TRUE если $a не равно $b |
| Не идентично | $a !== $b | TRUE если $a не равно $b и/или тип данных $a не равен типу данных $b |
| Меньше | $a < $b | TRUE если $a меньше $b |
| Больше | $a > $b | TRUE если $a больше $b |
| Меньше или равно | $a <= $b | TRUE если $a меньше или равно $b |
| Больше или равно | $a >= $b | TRUE если $a больше или равно $b |
<?php
$a = 100; // целочисленная
$b = '100'; // строковая
var_dump($a == $b); // выведет bool(true)
?>
Логические операторы
Логические операторы схожи с битовыми по принципу действия. Не надо забывать, что битовые операции И/ИЛИ обозначается одним символом, а логическая - двумя или специальным словом.
| Название | Пример | Результат |
| AND (И) | $a && $b или $a and $b | TRUE если оба операнда TRUE |
| OR (ИЛИ) | $a || $b или $a or $b | TRUE, если хотя бы один оператор TRUE |
| XOP (ИЛИ-НЕ) | $a xor $b | TRUE, когда только один из операторов TRUE |
| NOT (Отрицание) | !$a | TRUE, когда операнд FALSE |
<?php
$a = true;
$b = false;
$and = $a && $b; // $and = FALSE
$or = $a || $b; // $or = TRUE
$xor = $a xor $b; // $xor = TRUE
$not = !$a; // $not = FALSE
?>
На заметку: операция присвоения дает TRUE если присвоение прошло успешно и присвоенное значение не равно FALSE. Поэтому следующий код выполняется без ошибок, но выполняется некорректно:
<?php
$a = 'первое значение';
if($b = 200)
$a = 'второе значение';
echo $a;
?>
Операторы массивов
| Название | Пример | Результат |
| Объединение | $a + $b или $a and $b | Объединение двух массивов |
| Эквивалентность | $a == $b или $a or $b | TRUE, если массивы имеют одинаковый набор пар "ключ/значение" |
| Идентичность | $a === $b | TRUE, если массивы имеют одинаковый набор пар "ключ/значение", в одинаковом порядке и одинакого типа |
| Неэквивалентность | $a != $b или $a <> $b | TRUE, если массивы имеют различный набор пар "ключ/значение" |
| Неидентичность | $a !== $b | TRUE, если массивы имеют различный набор пар "ключ/значение", в одинаковом порядке и одинакого типа |
Оператор объединения "+" добавляет элементы правого операнда к списку элементов левого операнда. При этом совпадающие пары "ключ/значение" не перезаписываются, а пропускаются.
Подробно мы рассмотрим операторы работы с массивами в соответствующей главе.
Комментариев нет:
Отправить комментарий