PHP Lazy Boolean Evaluation

У меня есть условное утверждение:

if($boolean && expensiveOperation()){ ...} 

Есть ли у PHP ленивая логическая оценка, т. Е. Будет ли она проверять $boolean и если она ложна, не беспокоиться о выполнении дорогостоящей операции? Если да, то в каком порядке следует поместить мои переменные?

    Да. Это называется оценкой короткого замыкания. См. Комментарии на странице документации …

    Что касается заказа, он выполняет проверки на основе приоритета оператора, а затем слева направо. Так:

     A || B || C 

    Сначала будет оценивать A, а затем B, только если A является ложным, а C – только если оба A и B являются ложными …

    Но

     A AND B || C 

    Всегда будет оценивать B || C B || C , так как || имеет более высокий приоритет, чем AND (не верно для && ).

    Да, PHP делает оценку короткого замыкания .

    PHP имеет оценку короткого замыкания. Ваш пример будет правильным использованием:

    http://en.wikipedia.org/wiki/Short-circuit_evaluation#Support_in_common_programming_languages