我有一个不同部门的多维数组,并且想要使用foreach循环遍历它,但出于某种原因,foreach循环通过每次迭代获取第一个键下的值。PHP foreach卡在第一个键的值
数组是这样的:
$departmentArray =
Array
(
[0] => Array
(
[dpt_id] => 5
[dpt_name] => Administration
[dpt_employees] => Array
(
[0] => Array
(
[started] => 2000-06-01
[stopped] => 9999-99-99
[empl_id] => 21
)
[1] => Array
(
[started] => 2000-06-01
[stopped] => 2010-01-01
[empl_id] => 23
)
)
)
[1] => Array
(
[dpt_id] => 6
[dpt_name] => Warehouse
[dpt_employees] => Array
(
[0] => Array
(
[started] => 2000-10-01
[stopped] => 2012-01-01
[empl_id] => 30
)
[1] => Array
(
[started] => 2007-10-17
[stopped] => 9999-99-99
[empl_id] => 197
)
)
)
)
而且foreach循环是这样的:
foreach($departmentArray as $key => $value) {
print_r($key);
print_r($value['dpt_name']);
}
而这种打印:
0 Administration 1 Administration.
有谁知道,为什么环不会在数组中向前移动,并在第二次迭代期间在键/索引1下抓取值(仓库)?
不,这*代码不会打印。如果你自己的代码打印出来,你正在做一些不同的事情。可能通过引用迭代并更改值? – Jon
谢谢你的回答。你是对的,我在代码中通过引用进行迭代,在这里我使用相同的名称,现在我将研究它。 – acrmuui