PHP IN_ARRAY 函数使用注意事项

yipeiwu_com7年前PHP代码库
另外,我们在 控制结构比较两个数值是否一直的时候,也应该尽量使用 === 来代替 ==(当然,这个也根据具体的业务逻辑选用比较合适的)。

小弟来解释下 为什么
var_dump(in_array(0, array('s' ));

这句话的结果是bool(true)。

因为in_array会将0 和's' 进行比较,0是number类型,'s'是string类型,根据php manual 中“Comparison Operators” 一章的说明可知,number 和string进行

比较的时候,会先将string类型首先转化为number,然后再进行比较操作。 's'转化为number的结果为0,而0 == 0 的结果是true,所以in_array(0, array('s', 'ss'))的结果也是true

如果把in_array 的第三个参数strict设置为 true,比较的时候 就会判断值和类型是否都相当。如果都相当的话,才会返回true,否则返回false.

仅此为记。

相关文章

一个PHP的String类代码

使用方法: 复制代码 代码如下: $s ='中国'; $os = new String( $s ); echo $os->decode('gbk') ,''; echo $os-&...

php数组一对一替换实现代码

复制代码 代码如下: <?php header("Content-type: text/html; charset=utf-8"); function multiple_repla...

用PHP控制用户的浏览器--ob*函数的使用说明

用PHP控制用户的浏览器--ob*函数的使用˂!-- google 的广告条 2005年09月20日换位置 唉,22号被停了.郁闷,没作弊呀 11.27日重开了 ˂!-...

thinkphp 字母函数详解T/I/N/D/M/A/R/U

1、 /** * 获取模版文件 格式 资源://模块@主题/控制器/操作 * @param string $template 模版资源地址 * @param string $l...

让PHP更快的提供文件下载的代码

但是, 这样做, 就没办法做一些统计, 权限检查, 等等的工作. 于是, 很多时候, 我们采用让PHP来做转发, 为用户提供文件下载. 复制代码 代码如下: <?php $file...