在不改变字符串数组结构的前提下,如果另一个字符串是否包含在此数组中。比如$arr[0]="北京欢迎你"; $arr[1]="天安门"; 如何查找字符串$search="北京";是否在字符串数组$arr中。

解决方案 »

  1.   

    麽的办法  你这个只是一部分匹配  array_search in_array都不行
    你自己处理吧,比如    function a( $array, $find ){ return false===strpos(join('',$array), $find)?false:true; }
        function b( $array, $find ){ foreach($array as $k){ if(false===strpos($k,$find))return true; }return false; }
      

  2.   

    第一个连接在一起可能会出现偏差,用第二个比较好
    function a( $array, $find ){ return false===strpos(join('',$array), $find)?false:true; } function b( $array, $find ){ foreach($array as $k){ if(false===strpos($k,$find))return true;}return false; }
      

  3.   

    奇怪,为啥要把最后半边}给我搞消失呢,直接贴上来了
    function a( $array, $find ){ return false===strpos(join('',$array), $find)?false:true; }
    function b( $array, $find ){ foreach($array as $k){ if(false===strpos($k,$find))return true; }return false; }
      

  4.   

    一维的话直接用preg_grep$key = '北京';
    count(preg_grep("/{$key}/",array(
      "北京欢迎您"
     ,"天安门"
    ))) && print("北京有出现在数组中");
      

  5.   

    为什么不用 array_filter 呢?