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.

仅此为记。

相关文章

深入PHP5中的魔术方法详解

从PHP 5以后的版本,PHP中的类就可以使用魔术方法了。其规定以两个下划线(__)开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开头,除非是为了重载已有的魔术方法。 1、_...

php向js函数传参的几种方法

<?php echo "<script>test('$_POST[userid]');</script> "; ?> 在上面的...

PHP实现对图片的反色处理功能【测试可用】

PHP实现对图片的反色处理功能【测试可用】

本文实例讲述了PHP实现对图片的反色处理功能。分享给大家供大家参考,具体如下: 今天有个需求用php对图片进行反色,和转灰,之前不知道可不可行,后来看到了imagefilter()函数,...

PHP数组操作简单案例分析

PHP数组操作简单案例分析

本文实例讲述了PHP数组操作相关技巧。分享给大家供大家参考,具体如下: 这个是一道简单的PHP数组入门题 $Str = "as5454654%^$%^$7675dhasjkdhh12...

解析php中用PHPMailer来发送邮件的示例(126.com的例子)

<?phprequire_once('../class.phpmailer.php');$mail= new PHPMailer();$body= "我终于发送邮件成功了!呵呵!g...