Php 使用多维数组中的第二个键获取值
我有一个列表或数组:Php 使用多维数组中的第二个键获取值,php,multidimensional-array,Php,Multidimensional Array,我有一个列表或数组: $var_menu_sub["1"]["1"] = "1|Sub Menu Label #1"; $var_menu_sub["1"]["2"] = "1|Sub Menu Label #2"; $var_menu_sub["1"]["3"] = "1|Sub Menu Label #3"; $var_menu_sub["2"]["this_key"] = "1|Change Password"; $var_menu_sub["3"]["1"] = "1|Sub Menu
$var_menu_sub["1"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["1"]["2"] = "1|Sub Menu Label #2";
$var_menu_sub["1"]["3"] = "1|Sub Menu Label #3";
$var_menu_sub["2"]["this_key"] = "1|Change Password";
$var_menu_sub["3"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["3"]["2"] = "1|Sub Menu Label #2";
那么,如果我只使用key“this_key”而不知道数组变量中的“2”键,那么如何获取值“Change Password”
这样(???=平均动态):
假设只有一个
此\u键
:
echo current(array_column($var_menu_sub, 'this_key'));
如果有多个此_键
,则只需对结果执行foreach
:
foreach(array_column($var_menu_sub, 'this_key') as $value) {
echo $value;
}
一种方法是:
<?php
$var_menu_sub["1"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["1"]["2"] = "1|Sub Menu Label #2";
$var_menu_sub["1"]["3"] = "1|Sub Menu Label #3";
$var_menu_sub["2"]["this_key"] = "1|Change Password";
$var_menu_sub["3"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["3"]["2"] = "1|Sub Menu Label #2";
// Loop over entire array
foreach ($var_menu_sub as $data) {
//Loop over the array which is indexed by the key you know
foreach ($data as $key => $value) {
// Look for that key
if ($key == 'this_key') {
echo $value;
}
}
}
它与array_column()配合使用,谢谢,你救了我一天:)谢谢你的回答,它可以工作,但我需要更简单的行代码,然后我使用array_column():)
<?php
$var_menu_sub["1"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["1"]["2"] = "1|Sub Menu Label #2";
$var_menu_sub["1"]["3"] = "1|Sub Menu Label #3";
$var_menu_sub["2"]["this_key"] = "1|Change Password";
$var_menu_sub["3"]["1"] = "1|Sub Menu Label #1";
$var_menu_sub["3"]["2"] = "1|Sub Menu Label #2";
// Loop over entire array
foreach ($var_menu_sub as $data) {
//Loop over the array which is indexed by the key you know
foreach ($data as $key => $value) {
// Look for that key
if ($key == 'this_key') {
echo $value;
}
}
}