Richard101
4年前

为啥 in_array('x', [0, 1])true

讨论数量: 3

in_array('x', [0, 1], true) 加第三个参数为 true 就会检查类型是否匹配了

4年前 评论

类型转换
原因就在于,在比较前,PHP做了类型转换。

string类型的数据会转换成int型,然后再比较。

而如果string类型数据第一个字符不是数字,就会转换成0。

来源:https://www.iteye.com/blog/flyer0126-24346...

4年前 评论

由于历史原因,PHP默认开启的若类型,在做比对前,会做一次隐式类型转换。如果不想隐式转化,就加第三个参数,使用严格模式就好了

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
热门动弹
暂无内容~