PHP - выполнение if (условия) - PullRequest
       41

PHP - выполнение if (условия)

17 голосов
/ 03 декабря 2010

допустим, у меня есть что-то вроде этого:

if(1 == 0 && do_stuff()) { 
   ...
}

Очевидно, что 1 - это не 0, поэтому нет смысла проверять другое условие.Так работает ли когда-нибудь PHP do_stuff()?

Ответы [ 3 ]

40 голосов
/ 03 декабря 2010

Нет - PHP использует ленивую оценку (иногда называемую оценкой короткого замыкания), поэтому, если первое условие в логическом И ложно, он не будет пытаться оценить любое из других условий.

Аналогично, если вы выполняли ИЛИ и первое условие выполнялось, второе не оценивалось.

4 голосов
/ 03 декабря 2010

Если первое условие ложно, тогда php никогда не запускает второе условие в && operator

1 голос
/ 03 декабря 2010

НЕТ, он не будет выполняться do_stuff() в этом состоянии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...