2 次元配列値の 1 つの列を検索し、見つかったときにキーを返すコードを作成しようとしています。現在、値を見つけてブール値の true または false を返す関数と、キーを返す関数 (動作していない関数) の 2 つの関数があります。検索関数の再帰的な性質を維持しながらキーを返すという意味で、2 つをマージしたいと思います。1つの機能で両方を行う方法は考えられませんが、キーファインダーが機能することは大歓迎です.
ありがとう
function in_array_r($needle, $haystack, $strict = true) {
foreach ($haystack as $item) {
if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) {
return true;
}
}
return false;
}
function loopAndFind($array, $index, $search){
$returnArray = array();
foreach($array as $k=>$v){
if($v[$index] == $search){
$returnArray[] = $k;
}
}
return $returnArray;
}`
すみません、例を追加するつもりでした。例えば:
Array [0]{
[0]=hello
[1]=6
}
[1]
{
[0]=world
[1]=4
}
[x][0] インデックスで配列を検索して、検索語の単語の各文字列をチェックしたいと考えています。見つかった場合は、「world」が 1 を返すように、メイン配列のインデックス/キーを返す必要があります。