多次元配列をトラバースする以下のphp検索スクリプトがあります。$value が見つかった場合はそれを返しますが、アドレスも返したいです (2 レベルしかないと考えて)
function arr_search($array, $line, $lvl=0)
{ 
// Loops through each element. If element again is array, function is recalled. If not, result is echoed.
foreach($array as $key=>$value)
{ 
    if(is_array($value))
    {
        arr_search($value, $line); 
    }else{ 
          if(strpos($line, $value))
          echo "found $key: $value\n";
          // return $value; // should return array with [?],[$key],[$value]
    }
}
return false;
}
$key は、見つかった最新の配列のアドレスであることがわかります。しかし、親配列のインデックスが必要です。
配列の例:
Array
(
[0] => Array
    (
        [0] => string324
        [1] => string234
        [2] => string7567
        [3] => stringw34
    )
[1] => Array
    (
        [0] => string4563
        [1] => string37
    )
[2] => Array
    (
        [0] => string3735
        [1] => string3563
        [2] => string3563
        [3] => string356
        [4] => string356
    )
)