2009-12-08 3 views
0

Часто я натыкаюсь на следующий подход определения условного оператора:условного оператора операнды заказа

if(false === $expr) { 
     ... 
} 

У меня есть несколько вопросов по этому поводу.

  1. Есть ли смысл использовать константу значения (ложь, 1, 0, 123, «строки» и т.д.) в качестве первого операнда вместо вторых в тех случаях, когда второй операнд не слишком долго. Например, я предпочел бы поставить ложь как первого операнда, когда я следующий заявление:

    if(false === file_put_contents($file_path, $document['title'].PHP_EOL.PHP_EOL.$document['body'])) { ... }

  2. Имеет ли смысл вообще использовать такой подход в интерпретируемый язык, который РНР? Я предполагаю, что это происходит из скомпилированных языков, таких как Java, когда мы хотим избежать NullPointerException или в подобных случаях. Я прав?

  3. Какие полезные случаи использования постоянного значения в качестве первого операнда вы знаете?

ответ

3

На самом деле это происходит от быстрого TypeR ошибки, как это в C:

if(lenght = 0) { ... } 

Где переменные были непреднамеренно установлено в сравниваемых значения. Сторнирование предполагаемого сравнения приведет к ошибке компилятора.

+0

+1 Я бы разместил то же самое :) –

+0

Мне кажется, что в том, что вы уже называете «ошибкой быстрого ввода», есть опечатка («длина» вместо «длина»). :П – Amber

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