php in_array 函数使用说明与in_array需要注意的地方说明


Posted in PHP onApril 13, 2010

in_array
(PHP 4, PHP 5)

in_array — 检查数组中是否存在某个值

说明

bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

在 haystack 中搜索 needle ,如果找到则返回 TRUE,否则返回 FALSE。

如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。

Note: 如果 needle 是字符串,则比较是区分大小写的。

Note: 在 PHP 版本 4.2.0 之前,needle 不允许是一个数组。

Example #1 in_array() 例子

<?php 
$os = array("Mac", "NT", "Irix", "Linux"); 
if (in_array("Irix", $os)) { 
echo "Got Irix"; 
} 
if (in_array("mac", $os)) { 
echo "Got mac"; 
} 
?>

第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为:
Got Irix

Example #2 in_array() 严格类型检查例子

<?php 
$a = array('1.10', 12.4, 1.13); if (in_array('12.4', $a, true)) { 
echo "'12.4' found with strict check\n"; 
} 
if (in_array(1.13, $a, true)) { 
echo "1.13 found with strict check\n"; 
} 
?>

上例将输出:

1.13 found with strict check

Example #3 in_array() 中用数组作为 needle

<?php 
$a = array(array('p', 'h'), array('p', 'r'), 'o'); if (in_array(array('p', 'h'), $a)) { 
echo "'ph' was found\n"; 
} 
if (in_array(array('f', 'i'), $a)) { 
echo "'fi' was found\n"; 
} 
if (in_array('o', $a)) { 
echo "'o' was found\n"; 
} 
?>

上例将输出:

'ph' was found
'o' was found

需要注意的地方:

假如:

先声明一个数组为:

$arr = array(

*);

那么则有:

 

in_array(0, $arr) == true

 

令人费解! {弱语言}


解决办法:
    in_array(strval(0), $arr, true))
PHP 相关文章推荐
对javascript和select部件的结合运用
Oct 09 PHP
回答PHPCHINA上的几个问题:URL映射
Feb 14 PHP
php下过滤html代码的函数 提高程序安全性
Mar 02 PHP
用php的ob_start来生成静态页面的方法分析
Mar 09 PHP
php获取目标函数执行时间示例
Mar 04 PHP
PHP将MySQL的查询结果转换为数组并用where拼接的示例
May 13 PHP
PHP实现链表的定义与反转功能示例
Jun 09 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
Mar 22 PHP
php-fpm重启导致的程序执行中断问题详解
Apr 29 PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 PHP
Laravel5.1 框架控制器基础用法实例分析
Jan 04 PHP
php读取javascript设置的cookies的代码
Apr 12 #PHP
php将数据库中所有内容生成静态html文档的代码
Apr 12 #PHP
php Smarty模板生成html文档的方法
Apr 12 #PHP
php empty函数判断mysql表单是否为空
Apr 12 #PHP
PHP iconv 解决utf-8和gb2312编码转换问题
Apr 12 #PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
Apr 12 #PHP
ajax+php打造进度条代码[readyState各状态说明]
Apr 12 #PHP
You might like
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
UCenter中的一个可逆加密函数authcode函数代码
2010/07/20 PHP
PHP编程风格规范分享
2014/01/15 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
js兼容pc端浏览器并有多种弹出小提示的手机端浮层控件实例
2015/04/29 Javascript
jQuery实现向下滑出的二级菜单效果实例
2015/08/22 Javascript
js数组如何添加json数据及js数组与json的区别
2015/10/27 Javascript
JS实现带提示的星级评分效果完整实例
2015/10/30 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
微信小程序 swiper组件详解及实例代码
2016/10/25 Javascript
JS获取当前地理位置的方法
2017/10/25 Javascript
vue中引用swiper轮播插件的教程详解
2018/08/16 Javascript
vue通过style或者class改变样式的实例代码
2018/10/30 Javascript
vue在index.html中引入静态文件不生效问题及解决方法
2019/04/29 Javascript
JavaScript一元正号运算符示例代码
2019/06/30 Javascript
详解微信小程序自定义组件的实现及数据交互
2019/07/22 Javascript
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
[01:35]辉夜杯战队访谈宣传片—LGD
2015/12/25 DOTA
Python中的CURL PycURL使用例子
2014/06/01 Python
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
python爬取m3u8连接的视频
2018/02/28 Python
Python使用 Beanstalkd 做异步任务处理的方法
2018/04/24 Python
Python使用一行代码获取上个月是几月
2018/08/30 Python
python实现指定字符串补全空格、前面填充0的方法
2018/11/16 Python
对python中的装包与解包实例详解
2019/08/24 Python
PHP统计代码行数的小代码
2019/09/19 Python
HTML5地理定位_动力节点Java学院整理
2017/07/12 HTML / CSS
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
教师自荐信范文
2013/12/09 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
推广普通话共筑中国梦演讲稿
2014/09/21 职场文书
2014年妇联工作总结
2014/11/21 职场文书
三严三实·严以律己心得体会
2016/01/13 职场文书
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技