在foreach()循环-PHP中显示2个数组值

在foreach()循环-PHP中显示2个数组值,php,arrays,Php,Arrays,我有这个阵列: Array ( [0] => 2012-08-21 [1] => 2012-08-22 [2] => 2012-08-23 [3] => 2012-08-24 [4] => 2012-08-25 [5] => 2012-08-26 [6] => 2012-08-27 [7] => 2012-08-28 [8] => 2012-08-29 [9] =

我有这个阵列:

Array
(
    [0] => 2012-08-21
    [1] => 2012-08-22
    [2] => 2012-08-23
    [3] => 2012-08-24
    [4] => 2012-08-25
    [5] => 2012-08-26
    [6] => 2012-08-27
    [7] => 2012-08-28
    [8] => 2012-08-29
    [9] => 2012-08-30
)
要创建此阵列,我将使用以下方法:

function getAllDatesBetweenTwoDates($strDateFrom,$strDateTo)
{
    $aryRange=array();

    $iDateFrom=mktime(1,0,0,substr($strDateFrom,5,2),     substr($strDateFrom,8,2),substr($strDateFrom,0,4));
    $iDateTo=mktime(1,0,0,substr($strDateTo,5,2),     substr($strDateTo,8,2),substr($strDateTo,0,4));

    if ($iDateTo>=$iDateFrom)
    {
        array_push($aryRange,date('Y-m-d',$iDateFrom)); // first entry
        while ($iDateFrom<$iDateTo)
        {
            $iDateFrom+=86400; // add 24 hours
            array_push($aryRange,date('Y-m-d',$iDateFrom));
        }
    }
    return $aryRange;
}

$fromDate = '2012-08-21';
$toDate = '2012-08-30';

$dateArray = getAllDatesBetweenTwoDates($fromDate, $toDate);


for($i=0, $count = count($dateArray);$i<$count;$i++) {
 echo $dateArray[$i] . " - " . $dateArray[$i++] . "<br>";
}
但我希望它能回来:

2012-08-21 - 2012-08-22
2012-08-22 - 2012-08-23
2012-08-23 - 2012-08-24
2012-08-24 - 2012-08-25
2012-08-25 - 2012-08-26
2012-08-26 - 2012-08-27
2012-08-27 - 2012-08-28
2012-08-28 - 2012-08-29
2012-08-29 - 2012-08-30
2012-08-30 - 2012-08-30

我怎样才能做到这一点呢?

您将
I
增加两次,这就是问题所在。对于迭代,您必须在
内部使用
$i+1
而不是
i++

for($i=0, $count = count($dateArray);$i<$count;$i++) {
 echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0,$count=count($dateArray);$i您将
i
增加两次,这就是问题所在。对于
迭代,您必须使用
$i+1
而不是
i++
内部

for($i=0, $count = count($dateArray);$i<$count;$i++) {
 echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0,$count=count($dateArray);$i您将
i
增加两次,这就是问题所在。对于
迭代,您必须使用
$i+1
而不是
i++
内部

for($i=0, $count = count($dateArray);$i<$count;$i++) {
 echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0,$count=count($dateArray);$i您将
i
增加两次,这就是问题所在。对于
迭代,您必须使用
$i+1
而不是
i++
内部

for($i=0, $count = count($dateArray);$i<$count;$i++) {
 echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0,$count=count($dateArray);$i问题不在于函数本身,而在于打印它的方式(双增量)。请尝试以下循环:

for($i=0; $i<count($dateArray)-1;$i++) {
   echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0;$i问题不在于函数本身,而在于打印它的方式(双增量)。请尝试以下循环:

for($i=0; $i<count($dateArray)-1;$i++) {
   echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0;$i问题不在于函数本身,而在于打印它的方式(双增量)。请尝试以下循环:

for($i=0; $i<count($dateArray)-1;$i++) {
   echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}

对于($i=0;$i问题不在于函数本身,而在于打印它的方式(双增量)。请尝试以下循环:

for($i=0; $i<count($dateArray)-1;$i++) {
   echo $dateArray[$i] . " - " . $dateArray[$i+1] . "<br>";
}
$i=0;$i的