Php 多维数组中的搜索和获取键
我有多维数组,我需要通过“add_fields”数组中的值通过“value”搜索顶级键。我想不出我能达到这个结果。有人能帮我吗 我在谷歌上搜索了一下,找到了几个解决方案,但没有得到任何结果 尝试此代码Php 多维数组中的搜索和获取键,php,arrays,Php,Arrays,我有多维数组,我需要通过“add_fields”数组中的值通过“value”搜索顶级键。我想不出我能达到这个结果。有人能帮我吗 我在谷歌上搜索了一下,找到了几个解决方案,但没有得到任何结果 尝试此代码 array_search('001001', array_column(array_column($arr, "usr_column_504"), 0)), 但我什么也没拿到,我需要拿到顶级钥匙。在本例中,其0 array ( 0 => ar
array_search('001001', array_column(array_column($arr, "usr_column_504"), 0)),
但我什么也没拿到,我需要拿到顶级钥匙。在本例中,其0
array (
0 =>
array (
'id' => 1,
'group_id' => 327,
'volume' => 0,
'vat' => 1,
'order_id' => 1,
'add_fields' =>
array (
1 =>
array (
'field' => 'usr_column_501',
'value' => '',
),
2 =>
array (
'field' => 'usr_column_504',
'value' => '001001',
),
),
),
1 =>
array (
'id' => 2,
'group_id' => 327,
'vat' => 1,
'order_id' => 2,
'add_fields' =>
array (
1 =>
array (
'field' => 'usr_column_501',
'value' => '',
),
2 =>
array (
'field' => 'usr_column_504',
'value' => '001002',
),
),
),
)
如果您想要第一个键,其中
字段
的值等于usr\u column\u 504
,则可以使用外部和内部foreach
foreach ($arr as $key => $item) {
foreach ($item["add_fields"] as $addField) {
if ($addField["field"] === "usr_column_504") {
echo $key;
return;
}
}
}
找到字段值后,从外部foreach返回$key
foreach ($arr as $key => $item) {
foreach ($item["add_fields"] as $addField) {
if ($addField["field"] === "usr_column_504") {
echo $key;
return;
}
}
}
输出
0
您知道这是如何工作的,请向我们展示您的最佳尝试(代码)-实际结果是什么,需要什么,出现了什么错误,您是否进行了任何调试?已编辑的问题。但我没有得到任何错误,只是空数组()