总结:关键的判断,比较尽量使用=== 类型和值都比较的恒等比较

1.if($var) $var 遵循boolean 转换。

当转换为 boolean 时,以下值被认为是 FALSE

2.字符串主动转整形(int)或intval():会将从字符串的开始进行转换知道遇到一个非数字的字符。即使出现无法转换的字符串,intval()不会报错而是返回0。

3.比较==中,隐藏的字符串整形转换原则:a.进行比较运算时,如果遇到了0e\d+这种字符串,就会将这种字符串解析为科学计数法。b.当其中的一个字符串是0x开头的时候,PHP会将此字符串解析成为十进制然后再进行比较。

"0e1abc"=="0"     //false
"0x1e240"=="123456"		//true
"0x1e240"==123456		//true
"0e132456789"=="0e7124511451155" //true

4.注意 switch,array_search()与in_array()松散比较来判断问题。

posted on 2016-08-29 21:32  swing07  阅读(426)  评论(0编辑  收藏  举报