懒了很久了,还是养成随手记录的习惯比较好,不少东西再次碰到却不知怎么办的时候非常郁闷啊
因为工作需要,开始php没有多久,今天遇到false和0的判断问题
使用strpos(string,find,offset=null)这个函数,恰好,find出现在string的0位置上,这下郁闷了:
strpos的返回值:
没有找到的情况下false,找到的情况下就find是位置所在了
以下代码郁闷了
if(strpos(string,find)==false){……}
无论string中是否存在find,都会执行“……”的代码
调试发现,strpos(string,find)返回值没问题,false或者0
在调试工具中点击具体的变量值发现问题了,变量值被点击后false也变成0了,恍然大悟
(以前用c/c++、c#确实没有遇到过,也可能是自己太粗心吧)
具体如何判断
if(strpos(string,find)===false){……}
或者
if(strpos(string,find)!==false){……}