Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何遍历多维数组_Php_Arrays_Loops_Multidimensional Array - Fatal编程技术网

Php 如何遍历多维数组

Php 如何遍历多维数组,php,arrays,loops,multidimensional-array,Php,Arrays,Loops,Multidimensional Array,我有一个数组,看起来像这样: Array ( [apple] => Array ( [0] => 689795 [1] => September 2012 [2] => 689795 [3] => September 2012 [4] => 1113821 [5] => June 2013

我有一个数组,看起来像这样:

Array
(
    [apple] => Array
        (
            [0] => 689795
            [1] => September 2012
            [2] => 689795
            [3] => September 2012
            [4] => 1113821
            [5] => June 2013
            [6] => 1122864
            [7] => July 2013
        )

    [pear] => Array
        (
            [0] => 1914898
            [1] => September 2012
            [2] => 1914898
            [3] => September 2012
            [4] => 1914646
            [5] => September 2012
            [6] => 1914898
            [7] => September 2012
        )
)
['September 2012', 689795],
['September 2012', 689795],
['June 2013', 1113821],
['July 2013', 1122864],
我想做的是循环通过“apple”元素并输出如下内容:

Array
(
    [apple] => Array
        (
            [0] => 689795
            [1] => September 2012
            [2] => 689795
            [3] => September 2012
            [4] => 1113821
            [5] => June 2013
            [6] => 1122864
            [7] => July 2013
        )

    [pear] => Array
        (
            [0] => 1914898
            [1] => September 2012
            [2] => 1914898
            [3] => September 2012
            [4] => 1914646
            [5] => September 2012
            [6] => 1914898
            [7] => September 2012
        )
)
['September 2012', 689795],
['September 2012', 689795],
['June 2013', 1113821],
['July 2013', 1122864],
我怎样才能做到这一点?所以我的主要目标是将日期和值组织在一起

我的数组数据比上面的示例长得多,但我只需要帮助就可以获得一个工作代码来循环和回显上面的示例

我已经尝试过使用foreach的
foreach
,但是我无法让它工作。我对PHP相当陌生。

请执行以下操作:

foreach ($first_array as $first_key=>$first_val) {
    foreach ($first_val as $second_key=>$second_val){
        echo $second_val;
    }
}
这将在第一个数组上循环。然后,对于从第一个循环(即嵌套数组)获得的每个值,再次执行for循环

现在,您的$second\u val第一次是“键”,第二次是“日期”。

执行以下操作:

foreach ($first_array as $first_key=>$first_val) {
    foreach ($first_val as $second_key=>$second_val){
        echo $second_val;
    }
}
这将在第一个数组上循环。然后,对于从第一个循环(即嵌套数组)获得的每个值,再次执行for循环


现在,$second\u val第一次是“键”,第二次是“日期”。

如果您的“内部”数组始终有8个元素,请使用外部
foreach
对结果进行迭代,并使用内部
进行
循环:

foreach ($array as $fruit) {

    for ($i == 1; $i <= 7; $i += 2) {

        echo $fruit[$i] . ", " . $fruit[$i-1] . "<br />";

    } // for
} // foreach
foreach($fruit作为数组){

对于($i==1;$i如果您的“内部”数组始终有8个元素,请使用外部
foreach
来迭代结果,并使用内部
for
循环:

foreach ($array as $fruit) {

    for ($i == 1; $i <= 7; $i += 2) {

        echo $fruit[$i] . ", " . $fruit[$i-1] . "<br />";

    } // for
} // foreach
foreach($fruit作为数组){

对于($i==1;$i我将使用array_chunk来实现类似的功能,这可能是最小、最干净的代码

foreach (array_chunk($arr['apple'], 2) as $row) {
    echo "['$row[1]', $row[0]],<br />";
}
foreach(数组块($arr['apple'],2)作为$row){
回显“['$row[1]',$row[0]],
”; }
我会使用array\u chunk来编写类似的代码,可能是最小、最干净的代码

foreach (array_chunk($arr['apple'], 2) as $row) {
    echo "['$row[1]', $row[0]],<br />";
}
foreach(数组块($arr['apple'],2)作为$row){
回显“['$row[1]',$row[0]],
”; }
通过使用嵌套循环
reset
&2
each()
在循环中调用似乎很方便,foreach(array_chunk($array['apple'],2)as$combo){}
也是一种可能。通过使用嵌套循环
reset
&2
each()
在循环中调用似乎很方便,foreach(array_chunk($array['apple'],2)作为$combo){}
也是一种可能性。