2012-02-07 4 views
1

У меня возник вопрос о том, что я нашел в книге лучших практик PHP, которую я читал.Лучший способ записи выражения в конструкцию if

Каков наилучший способ сделать следующий тест?

if("value" == $variable){} 

и

if($variable == "value"){} 
+1

Престола: [условия Yoda] (http://stackoverflow.com/a/2430307/142162) –

ответ

2

Единственный способ, в котором порядок вопросов сравнения является то, что если вы поставите "value" === $value избежать случайного назначения (т.е. $value = "value").

Вы должны указать the === comparison, если вы ищете различные способы написания условий. В общем, это хорошая практика, чтобы избежать принуждения типа.

3

Это предпочтение, первый известен как Yoda conditional, которая помогает предотвратить случайное назначение переменной в, если заявление и маскирующие логическую ошибку, однако, это, возможно, труднее читать (это читается как Yoda говорит это.)

0

Ваши примеры являются одинаковыми, но вы должны проверить $ переменная установлена ​​

if(isset($variable) && $variable == "value"){ 
} 
0

Это то же самое.

Некоторые люди предпочитают if("value" == $variable), потому что, если вы ошиблись и напишите только один =, он будет жаловаться.

0

Если вы используете этот if("value" == $variable){}, это убережет от ошибки мы обычно делаем, используя = вместо ==

Смежные вопросы