我经常看到脚本测试变量是否与FALSE不同。
这是来自“fgetcsv”函数的php man的一个例子,但我想我也在Java上看过它。
while (($data = fgetcsv($handle, 1000, ",")) === TRUE) {
//...
}
即使它变化不大,看起来更自然:
if ($i % 4 == 0)
{
//Do something
}
第二个代码的逻辑是否较少或效率较低?
答案 0 :(得分:2)
PHP的一个常见习惯是让函数返回一些有意义的值,或者在某些失败的情况下使用布尔FALSE
。在fgetcsv
的情况下,当没有更多值要返回时,将返回索引数组或FALSE
。
使用=== TRUE
根本不会在这里工作 - 索引数组不是布尔值TRUE
,但最明确的是!== FALSE
。