搜索子阵列并返回主数组键

时间:2014-01-21 15:54:30

标签: php arrays recursion

我正在尝试搜索下面的数组。我需要递归搜索子流中的一个针$ something [key] [#]。如果其中一个字符串与针匹配,那么我想返回顶级键值,告诉我它在哪个页面上。我试过嵌套foreach,但似乎无法得到这个!

$something = Array
(
    [1corte.php] => Array
        (
            [0] => Posicionador de toras automático
            [1] => Equipamento para madeiras acima de 3 m de comprimento
            [2] => Bitolador automático
        )

    [geminada.php] => Array
        (
            [0] => Jimi cracks corn
            [1] => etc
            [2] => etc2
        )

    [etc.php] => Array
        (
            [0] => ...

2 个答案:

答案 0 :(得分:3)

由于我在这里没有看到任何递归的实际证据,所以这应该没问题:

foreach ($something as $key => $values) {
    if (in_array($theValueYoureLookingFor, $values)) {
        echo 'Found it! The key is: ', $key;
        break;
    }
}

答案 1 :(得分:1)

下次展示你到目前为止所尝试的内容......

function searchString($stringToSearch) {
    $results = array();
    foreach($something as $key => $value) {
        foreach($value as $data) {
            if($data == $stringToSearch)
                results[] = $key;
        }
    }
    return $results;
}