[英]PHP - How do I access specific array values in nested array?
我有一個像這樣的數組:
Array (
[0] => Array (
[0] => 510
[1] => 984
[2] => 1045
[3] => 2068
[4] => 1054
[5] => 673
)
[1] => Array (
[0] => 1163
[1] => 1982
[2] => 2067
[3] => 3989
[4] => 1940
[5] => 1242
)
[2] => Array (
[0] => june
[1] => july
[2] => august
[3] => september
[4] => october
[5] => november
)
)
我只想一次訪問數組中的一個數組並回顯它們。
例如,我將得到:510、984、1045、2068、1054和673作為一個結果。
我查看了多個線程和答案,但是沒有什么能完全解決我的問題,我已經能夠打印出所有值,但我只想特別說明一些。
我將其存儲在變量中: $array_item
我最近的嘗試是:
foreach ($array_item as $inner) {
if (is_array($inner)) {
foreach ($inner[0] as $value) {
echo "$value \n";
}
}
}
這給了我:警告:為foreach()提供了無效的參數。
我以為那肯定行得通,我在做什么錯?
在您的代碼中$inner[0]
是內部數組元素之一,例如510
。 你不能繞過去。
如果只想循環$array_item[0]
,請不要循環整個數組。
if (is_array($array_item[0])) {
foreach ($array_item[0] as $value) {
echo "$value\n";
}
}
is_array($ array_item)返回true嗎?
if (is_array($array_item)) {
foreach ($array_item) {
if (is_array($inner)) {
foreach ($inner as $value) {
echo "$value \n";
}
}
}
}
編輯:此外,$ inner [0]不是數組。 $ inner是數組。
我會使用爆破, http://php.net/manual/en/function.implode.php
foreach($array_items as $items) {
echo implode(', ', $items);
}
我看到有人評論說他只希望輸出第一個數組,而不是全部。
if (is_array($array_item[0])) {
echo implode(PHP_EOL, $array_item[0]);
}
你永遠無法分辨出什么可以解決問題
$array_group = array();
if (isset($array_item[0]) and is_array($array_item[0])) {
foreach ($array_item[0] as $value) {
$array_group[] = $value;
}
$array_group
應該輸出
Array
(
[0] => 510
[1] => 984
[2] => 1045
[3] => 2068
[4] => 1054
[5] => 673
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.