PHP:在Array中搜索SubString

时间:2014-05-17 04:35:02

标签: php arrays substring

我想获得具有特定子串的Array索引。

这是我到目前为止所得到的:

<?php
    $array = array(0 => 'blau', 1 => 'rot', 2 => 'grün', 3 => 'rot');
    $key = array_search('grün', $array);  // $key = 2;
    $key = array_search('rot', $array);   // $key = 1;
?>

匹配整个值。但是,我想匹配一个子字符串。是否有预定义的功能来实现这一目标?

2 个答案:

答案 0 :(得分:-1)

您可以尝试将array_filterstrpos

一起使用
function search($var)
{
    if(strpos($var, 'some_sub_string') !== FALSE){
        return true;
    }

    return false;
}

$array = array(0 => 'blau', 1 => 'rot', 2 => 'grün', 3 => 'rot');
array_filter($array, 'search'));

答案 1 :(得分:-1)

function array_substr_search($search, $array){
    foreach($array as $index => $value){
        if (stripos($value, $search) !== false){
            return $index;
        }
    }
}

$a = array('blue', 'red', 'yellow', 'purple');

print array_substr_search('ello', $a); //returns 2 (yellow)