php中in_array函数用法探究_php技巧
程序员文章站
2022-04-28 19:24:16
...
本文较为深入的探究了php中in_array函数用法。分享给大家供大家参考。具体如下:
这个条件果然是成立的,按照我的思考逻辑上边的那个条件只有在参数1的值为“1,2,3”和为4的时候才成立,但是奇怪的是他居然成立了,随即测试了如下情况,代码如下:
这个是不成立的,在第一个测试用例下,如果把参数1写成'1'条件也是不成立的,得出的结论是:
今天突然想到php中的in_array函数有个其怪的用法,下面我们来看看这个用法,有需要的朋友简单的参考一下,代码如下:
复制代码 代码如下:
$a=array("1,2,3","4");
if(in_array(1,$a)){
echo "条件成立";
}
if(in_array(1,$a)){
echo "条件成立";
}
这个条件果然是成立的,按照我的思考逻辑上边的那个条件只有在参数1的值为“1,2,3”和为4的时候才成立,但是奇怪的是他居然成立了,随即测试了如下情况,代码如下:
复制代码 代码如下:
$a=array("a,2,3","4");
if(in_array('a',$a)){
echo "条件不成立";
}
if(in_array('a',$a)){
echo "条件不成立";
}
这个是不成立的,在第一个测试用例下,如果把参数1写成'1'条件也是不成立的,得出的结论是:
在PHP中如果第一个参数为数字——不加引号的数字啊,第二个数组参数包含有以该数字开头的字符串的话不管第一个参数是否为第二个参数的完整元素,都会返回真值,也就是说,in_array函数并非每次都是按照我的思考逻辑进行整个元素匹配,还是我对数据类型认识的不够清楚呢?
与此同时,还发现如果你的数组的第一个元素为0的时候,也会出现问题,看如下情况,代码如下:
复制代码 代码如下:
$a=array(0,"m");
if(in_array('mc6',$a))
{
echo "=====";
}
if(in_array('mc6',$a))
{
echo "=====";
}
感兴趣的朋友可以测试运行一下本文所述实例,相信会有新的收获!
希望本文所述对大家的php程序设计有所帮助。
推荐阅读
-
php中静态类与静态变量用法的区别分析_php技巧
-
php中ob_get_length缓冲函数用法实例详解
-
UCenter中的一个可逆加密函数authcode函数代码_php技巧
-
php中的字符编码转换函数用法示例,php示例_PHP教程
-
php中explode函数用法分析,phpexplode函数用法
-
php中crypt()函数实例用法总结
-
PHP strtotime函数用法、实现原理和源码分析_php技巧
-
详解PHP中的mb_detect_encoding函数使用方法_php技巧
-
PHP易混淆函数的区别及用法汇总_php技巧
-
PHP中strcmp()和strcasecmp()函数字符串比较用法分析_PHP