Еще в ноябре 2005 года на встрече в Париже разработчики обсудили новые возможности следующей, шестой, версии PHP. Интересует ли Вас, какой будет эта версия? Примите участие в опросе, который проводится на сайте рассылки.
[опрос на английском языке: PHP 6: Are you interesting in? (PHP 6: Вы зантересованы?) - YES (ДА) - NO (НЕТ)]
PHP 5 для начинающих
Логические операторы
Аннотация
Унарный и бинарные логические операторы и их разновидности.
Существует один унарный и три бинарных логических оператора, из которых два имеют по две разновидности. Все они сначала преобразуют свои аргументы (или аргумент) к логическому типу, а затем осуществляют с ними (или с ним) соответствующую логическую операцию и возвращают ее результат (тоже логическое значение).
Not (!). Единственный унарный оператор. Выражение принимает значение true, если его аргумент не равен true (т. е. равен false).
var_dump(!$t0);
bool(false)
var_dump(!$f0);
bool(true)
And (and). Выражение принимает значение true, если оба его аргумента равны true.
var_dump($t0 and $t1);
bool(true)
var_dump($t0 and $f0);
bool(false)
var_dump($f0 and $t0);
bool(false)
var_dump($f0 and $f1);
bool(false)
Замечание
Существует альтернативная форма оператора And - &&, которая не проверяет второй аргумент, если первый равен false (в этом случае от значения второго аргумента все равно ничего не зависит). Эта форма предпочтительнее для использования, так как в ряде случаев работает немного быстрее.
var_dump($f0 && $t0);
bool(false)
Or (or). Выражение принимает значение true, если хотя бы один из его аргументов равен true.
var_dump($t0 or $t1);
bool(true)
var_dump($t0 or $f0);
bool(true)
var_dump($f0 or $t0);
bool(true)
var_dump($f0 or $f1);
bool(false)
Замечание
У этого оператора также существует альтернативная форма - ||, которая не проверяет второй аргумент, если первые равен true.
var_dump($t0 || $f0);
bool(true)
Xor (xor). Выражение принимает значение true, в том, и только в том случае, если один из его аргументов равен true, а другой - нет.