在PHP开发中,数组是经常使用的数据类型之一。有时候我们需要判断某个值是否存在于数组中,可以使用in_array()函数来实现。但是如果我们需要判断某个值是否不存在于数组中,该怎么做呢?本文将介绍两种方法来解决这个问题。
方法一:使用!in_array()函数
in_array()函数可以判断某个值是否存在于数组中,如果存在则返回true,否则返回false。那么使用!in_array()函数就可以判断某个值是否不存在于数组中了。如下所示:1
2
3
4
$array = array(1, 2, 3, 4, 5);
if (!in_array(6, $array)) {
echo 6不存在于数组中;
}
代码中,判断6是否不存在于数组中,如果不存在则输出6不存在于数组中。
方法二:使用array_search()函数
array_search()函数在数组中搜索给定的值,并返回对应的键名。如果搜索成功,则返回该键名;否则返回false。那么,如果想判断某个值是否不存在于数组中,可以用array_search()函数来实现。如下所示:1
2
3
4
$array = array(1, 2, 3, 4, 5);
if (false === array_search(6, $array)) {
echo 6不存在于数组中;
}
代码中,使用array_search()函数搜索6在$array数组中的键名,如果搜索失败返回false,则判断6不存在于数组中,输出6不存在于数组中。
但是需要注意的是,使用!in_array()或array_search()函数判断某个值是否不存在于数组中时,需要将返回值的类型和值都进行比较,而不能只比较值。因为在PHP中,false有时候也会被认为是0或空字符串。所以,最好使用”===”进行比较。比如:
1
2
3
4
5
6
7
8
9
10
11
12
13
$array = array(0, false, “”, null);
if (false === array_search(0, $array)) {
echo “0不在数组中”;
}
if (false === in_array(false, $array)) {
echo “false不在数组中”;
}
if (false === in_array(“”, $array)) {
echo “空字符串不在数组中”;
}
if (false === in_array(null, $array)) {
echo “null不在数组中”;
}
代码中,$array数组包含了0、false、空字符串和null,分别使用array_search()和in_array()函数判断这些值是否不存在于数组中。由于false和0、空字符串的类型不同,所以要使用”===”进行比较。
以上就是判断某个值不存在于数组中的两种方法,希望能对PHP开发有所帮助。
以上就是php判断不存在某个数组内的详细内容,更多请关注php中文网其它相关文章!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有佣金分成!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.77ym.top",如遇到无法解压的请联系管理员!
7. 本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
暂无评论内容