php数组中是否包含某字符串中,PHP_php判断数组元素中是否存在某个字符串的方法,方法一:采用in_array(value,array,t - phpStudy...

php判断数组元素中是否存在某个字符串的方法

方法一:采用in_array(value,array,type)

type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

$arr = array('可以','如何','方法','知道','沒有','不要');

//in_array(value,array,type)

$isin = in_array("如何2",$arr);

if($isin){

echo "in====".$isin;

}else{

echo "out====".$isin;

}

方法二:

array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。array_key_exists(key,array

方法三:

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。array_search(value,array,strict),当数据量比较大的时候,用array_key_exists比较合适,但占用的内存比较大,

数组结构是: array(1, 2, 3, ..)和 array(1 => true, 2 => false, ..),内存使用比值为1:2。

具体跟内部实现有关系,在php中第一种和第二种的数据结构类似,都是关联数组。

其它补充:

查找一个元素是否在数组中,一共有下面三种做法:

in_array  '函数在数组中搜索给定的值。in_array(value,array,type)type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。

array_key_exists(key,array)

array_search 'array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。

array_search(value,array,strict)

从这里来看,在数据量不大的时候,比如小于1000,查找用哪一种都行,都不会成为瓶颈;

当数据量比较大的时候,用array_key_exists比较合适。

当然这里array_key_exists占用的内存比较大,经测算

数组结构是: array(1, 2, 3, ..)和 array(1 => true, 2 => false, ..)

他们内存使用比值为1:2;

这个和内部实现有关系,实际上在php中第一种和第二种的数据结构类似,都是关联数组。相关阅读:

Android TextView实现跑马灯效果的方法

利用javaScript实现点击输入框弹出窗体选择信息

浅谈C#中的值类型和引用类型

Android完全退出应用程序的方法

使用typeof判断function是否存在于上下文

属于自己的常见Android选项菜单样式集合

php 验证码(倾斜,正弦干扰线,黏贴,旋转)

Win10正式版WindowsDefender定义更新失败错误代码0x80200056的解决办法

IE中getElementsByName()对有些元素无效的解决方案

JS实现的网页倒计时数字时钟效果

详解PHP中instanceof关键字及instanceof关键字有什么作用

PHP设计模式之观察者模式(Observer)详细介绍和代码实例

可自定义速度的js图片无缝滚动示例分享

安装oracle11g INS-30131执行安装程序验证所需的初始设置失败的解决方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值