Назад к вопросам
JuniorТеорияЧасто
Что выведет программа (строки через пробел)?
<?php
$ok = true && false;
$ok2 = true and false;
var_dump($ok, $ok2);bool(false) bool(true)
- Ждать, что
andработает как&&: значение у них одно, ноandсвязывает слабее=, поэтому$ok2 = true and falseзаписываетtrue, а результат теряется. - Ждать, что
=выполнится раньше&&:&&связывает сильнее=, поэтому$ok = true && falseзаписывает результат всего выражения —false.
- Как изменить вторую строку, чтобы
$ok2получилаfalse? - Что окажется в
$xпосле$x = false or true;и почему?