【问题标题】:PHP Iterate Through Associative Array and Get Specific ValuesPHP遍历关联数组并获取特定值
【发布时间】:2011-06-20 03:09:12
【问题描述】:
我有以下关联数组:
<? $group_array;
输出如下:
Array
(
[user_id] => Array
(
[0] => 594
[1] => 597
)
[user_first] => Array
(
[0] => John
[1] => Jane
)
[user_last] => Array
(
[0] => Smith
[1] => Jones
)
)
我的问题是:如何遍历数组并按其名称输出特定值?
例如:
<?php
foreach ($group_array as $key => $value) {
print($key['user_id']);
print($key['user_first']);
// etc...
}
但这似乎不起作用。对此的任何帮助都会很棒。谢谢!
【问题讨论】:
标签:
php
associative-array
loops
【解决方案1】:
Crayon Violent 的答案是正确的,但我认为您的数组结构不正确,为了方便访问和使用,我推荐这样的东西
Array
(
[0] => Array
(
[user_id] => 594
[user_first] => John
[user_last] => Smith
)
[1] => Array
(
[user_id] => 597
[user_first] => Jane
[user_last] => Jones
)
)
为了像这样轻松访问:
foreach($group_array as $person) {
print($person['user_id']);
print($person['user_first']);
print($person['user_last']);
}
【解决方案2】:
您无需遍历数组即可按名称调用键
echo $group_array['user_id'][0];
// Result: 594
如果你想遍历这些值,你可以这样做:
for ($i=0;$i<count($group_array['user_id']);$i++) {
echo $group_array['user_id'][$i];
echo $group_array['user_first'][$i];
echo $group_array['user_last'][$i];
}
【解决方案3】:
foreach ($group_array['user_id'] as $key => $value) {
print($value); // user id
print($group_array['user_first'][$key]);
print($group_array['user_last'][$key]);
}