php 數(shù)組字符串搜索array_search技巧

字號(hào):


    php 搜索數(shù)組字符串我們一般會(huì)用到array_search和in_array兩個(gè)函數(shù)
    array_search() 函數(shù)與 in_array() 一樣,在數(shù)組中查找一個(gè)鍵值。如果找到了該值,匹配元素的鍵名會(huì)被返回。如果沒找到,則返回 false。
    但是array_search一般用到搜索一個(gè)數(shù)組中符合要求的第一個(gè)字符串。如果搜索的字符串在數(shù)組中含有多個(gè),使用array_search的話,是 不行的。這時(shí),我們使用array_keys()函數(shù),實(shí)現(xiàn)搜索的字符串在數(shù)組中含有多個(gè),
    看一下如下例子:
    $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); 
    $a=array_search( "blue",$array); //將輸出$a=0; 
    $b=array_search( 'red',$array); //將只會(huì)輸出$b=1; 
    $p = array_keys($array, 'red');//搜索的字符串在數(shù)組中含有多個(gè) 
    if(is_array($p)) {
      foreach($p as $v) { 
        echo $val."出現(xiàn)在".$v . " ";
       }
    }else { 
      echo $val."出現(xiàn)在".array_search($val, $array)." ";
    }
    例二:
    $array = array(4,5,7,8,9,10); 
    $found = array_search(8, $array); //調(diào)用array_search函數(shù)并輸出查找結(jié)果 
    if($found){ //如果找到輸出鍵 
    echo "已找到,鍵為".$found; 
    }else{ //如果沒有找到輸出錯(cuò)誤信息 
    echo "沒有找到"; 
    }
    下面我們來看看in_array函數(shù)
    采用in_array(value,array,type)
    type 可選。如果設(shè)置該參數(shù)為 true,則檢查搜索的數(shù)據(jù)與數(shù)組的值的類型是否相同。
    $arr = array('可以','如何','方法','知道','沒有','不要');
    //in_array(value,array,type)
    $isin = in_array("如何2",$arr);
    if($isin){
      echo "in====".$isin;
    }else{
      echo "out====".$isin;
    }
    以上就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡