php 搜索数组字符串我们一般会用到array_search和in_array两个函数
array_search()
函数与 in_array()
一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。
但是array_search一般用到搜索一个数组中符合要求的第一个字符串。如果搜索的字符串在数组中含有多个,使用array_search的话,是 不行的。这时,我们使用array_keys()函数,实现搜索的字符串在数组中含有多个,
看一下如下例子:
$array = array(0 => \'blue\', 1 => \'red\', 2 => \'green\', 3 => \'red\'); $a=array_search( \"blue\",$array); //将输出$a=0; $b=array_search( \'red\',$array); //将只会输出$b=1; $p = array_keys($array, \'red\');//搜索的字符串在数组中含有多个 if(is_array($p)) { foreach($p as $v) { echo $val.\"出现在\".$v . \" \"; } }else { echo $val.\"出现在\".array_search($val, $array).\" \"; }
例二:
$array = array(4,5,7,8,9,10); $found = array_search(8, $array); //调用array_search函数并输出查找结果 if($found){ //如果找到输出键 echo \"已找到,键为\".$found; }else{ //如果没有找到输出错误信息 echo \"没有找到\"; }
下面我们来看看in_array函数
采用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; }
以上就是本文的全部内容了,希望大家能够喜欢
本文地址:https://www.stayed.cn/item/23597
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我