[英]How to search by key=>value in a multidimensional array in PHP
[英]PHP multidimensional array search key by value
例如多维array
如下例所示
$arr = array(
[H1] => array(
"name" => "A"
"title" => "T1"
)
[H2] => array(
"name" => "B"
"title" => "B1"
)
)
假设我想在$arr
搜索等于A
name
,如果匹配,则搜索应返回键H1
如何在php中做到这一点?
我尝试了array_keys($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);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.