我想要搜索2维数组,但我只想在第二维中的特定字段中进行搜索。如果找到了,我想返回密钥。没有必要从那里继续,我只需要第一次出现,但我不介意让所有的出现。PHP:在二维数组中搜索,但仅查找特定键
的阵列可能是这样的:
$array = [
0 => ['value' => 'x', 'foo' => 'bar'],
1 => ['value' => 'y', 'foo' => 'bar'],
2 => ['value' => 'z', 'foo' => 'x'],
];
现在我首先想到的是这样的:
function myCustomArraySearch($array, $searchkey, $searchvalue) {
foreach ($array as $key => $value) {
if ($value[$searchkey] == $searchvalue) {
return $key;
}
}
return false;
}
echo myCustomArraySearch($array, 'value', 'x');
我敢肯定,还有一个更elegnt解决方案。有任何想法吗?
尝试'array_walk_recursive'内置PHP函数的http:// php.net/manual/ro/function.array-walk-recursive.php –