2009-12-08 53 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. 是否有意义,在所有使用中的解释语言,PHP是这样的做法?当我们想要避免NullPointerException或类似情况时,我认为这来自Java等编译语言。我对吗?

  3. 你知道哪些有用的常量值作为第一操作数?

回答

3

其实这是来自一个在C快速打字员的错误是这样的:

if(lenght = 0) { ... } 

当变量无意中设置成比较值。反转预期的比较会产生编译器错误。

+0

+1我会张贴相同的:) – 2009-12-08 12:26:13

+0

我觉得很讽刺的是,在你已经提到的“快速错别字错误”中,有一个错字(“长度”而不是“长度”)。 :P – Amber 2009-12-08 12:28:21