脚本宝典收集整理的这篇文章主要介绍了如何在PHP数组中搜索,类似于MySQL Like%var%search,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
例如:我有这个阵列
array( 'mark@test.COM'=> `Mark Mian`,'jhon@test.com'=> `John jack`,'logon@test.com'=> `Bob logon`,'Stela@test.com'=> `Stela Josh`,'json@test.com'=> `JSON Josh` 'bobby@test.com'=> `Bob Mark` )
我会做这种搜索,
如果我搜索Bob,它应该归还给我
如果我只搜索它,它应该返回那些包含例如:
注意:搜索应该是键或值
preg_grep_keys
function来搜索数组键中的模式,并添加了一个
array_merge
,它应该与带有非数字键的数组一起使用.如果键是数字的,只需使用仅仅
preg_grep
solution(preg_grep(‘~Mark~i’,$arr);来查找所有具有标记或标记的数组元素等).
function preg_grep_keys_values($pattern,$input,$flags = 0) { return array_merge( array_intersect_key($input,array_flip(preg_grep($pattern,array_keys($input),$flags))),preg_grep($pattern,$flags) ); } $a = array( 'mark@test.by.com'=> "Mark Mian lv",'jhon@test.lv.com'=> "John jack lv",'logon@test.en.com'=> "Bob logon",'Stela@test.es.com'=> "Stela Josh",'json@test.es.com'=> "Json Josh",'bobby@test.lv.com'=> "Bob Mark" ); $r = preg_grep_keys_values('~lv~i',$a); print_r($r);
上面的代码首先在键中搜索lv(不区分大小写),然后在值中搜索,然后将结果合并到1个数组中.因此,结果是:
[jhon@test.lv.com] => John jack lv [bobby@test.lv.com] => Bob Mark [mark@test.by.com] => Mark Mian lv
以上是脚本宝典为你收集整理的如何在PHP数组中搜索,类似于MySQL Like%var%search全部内容,希望文章能够帮你解决如何在PHP数组中搜索,类似于MySQL Like%var%search所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。