我有一個不同部門的多維數組,並且想要使用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