PHP多维数组按值搜索键
例如,多维PHP多维数组按值搜索键,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,例如,多维数组,如下面的示例所示 $arr = array( [H1] => array( "name" => "A" "title" => "T1" ) [H2] => array( "name" => "B" "title" => "B1" ) ) 假设我想在$arr中搜索name,它等于A,如果匹配,搜索应该返回键H1 如何在php
数组
,如下面的示例所示
$arr = array(
[H1] => array(
"name" => "A"
"title" => "T1"
)
[H2] => array(
"name" => "B"
"title" => "B1"
)
)
假设我想在$arr
中搜索name
,它等于A
,如果匹配,搜索应该返回键H1
如何在php中实现这一点
我尝试了array\u键($arr,“A”)
,但它返回的是一个数组而不是键。这可能有助于-
$arr = array(
'H1' => array(
"name" => "A",
"title" => "T1",
),
'H2' => array(
"name" => "B",
"title" => "B1",
)
);
// Generate a new array with 'keys' and values in 'name'
$new = array_combine(array_keys($arr), array_column($arr, 'name'));
// Search in that new array
$search = array_search('A', $new);
var_dump($search);
输出
string(2) "H1"
另一个简单的方法是:
$serach= false;
foreach($arr as $key => $val) {
if($val['name'] == 'A') {
$search= $key;
break;
}
}
var_dump($search);