1

这是条件语句:

$comments = get_value_of_comments_as_string();

if( !$comments == "on" ){...}

变量!之前的点的目的是什么,尤其是因为它包含一个字符串。$comments$comments

编辑:这个条件似乎不是一个错字,因为原始编码器有 5 个这样的条件语句。都是这样。

4

1 回答 1

12

!是逻辑否定运算符(或不是),所以基本上它将真值更改为假,将假值更改为真。

我敢肯定作者的意图是

!($comments == "on") // if comments == "on" return false

但他实际上在说的是

(!$comments) == "on")  // if not comments == "on" ... this test will only succeed if comments is null or an empty string.  

更好的表达方式是

$comments != "on"

这种行为是因为!具有更高的优先级然后 == 所以它会在==.

于 2013-05-29T02:48:17.243 回答