Разница в порядке в условиях IF

1

Я часто читаю в примерах и некоторые коды этого порядка, если условия:

if (false === $var)
if (null  === $var) 

вместо

if ($var === false)
if ($var === null)

В чем основное отличие? Какой из них я должен предпочесть?

  • 0
    Оба похожи. Вы можете пойти на любой из них.
Теги:

3 ответа

3

Они называются условиями Йоды. "Преимущество" в том, что вы не можете случайно присвоить значение переменной при проверке ее значения.
Примером может служить:

if (100 = $ var) даст вам синтаксическую ошибку. Поэтому аргумент заключается в том, что условия Yoda гарантируют, что вы действительно проверяете значение и не устанавливаете значение. Это в значительной степени подводит итог.

0

if (false === $ var), если (null === $ var)

Это предпочтительный и лучший способ проверки значений в условиях if. Если мы используем

$ var === false

ошибки ввода вручную

$ var = false может случайно присвоить значение false переменной переменной $ var и не подлежит определению.

в случае false = $ var компилятор выдает определенную ошибку, и мы можем легко идентифицировать ошибку

0

Основой, насколько мне известно, является предпочтительным синтаксисом на сегодняшний день.

if (false === $var)
if (null  === $var)

Потому что, когда вы случайно получаете такую опечатку:

if ($var = false)

Который вы назначили false переменной $ var, трудно проследить эту ошибку при запуске вашего кода.

  • 0
    Другая проблема заключается в том, что когда вы получаете эту опечатку, она не генерирует никаких ошибок. Вот почему это трудно отследить. Надеюсь, это поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню