簡體   English   中英

添加到2D數組或遍歷2D數組時出錯

[英]Error in adding to 2d array or looping through 2d array

我在此代碼中有問題:

while ($end <= $to){
        $currentDates = array("from" => $start, "to"=>$end);
        $allDates[] = $currentDates;
        echo 'from: ', $currentDates["from"]->format("m-d-y"),'<br>';
        unset($currentDates);
        $start->add($intervalObj);
        $end->add($intervalObj);
    }

var_dump($allDates);

循環中的回顯顯示了正確的值,但vardump顯示了數組所有位置上要添加到數組的最后日期

我認為您不需要2個循環....

錯誤來自您的循環

while ($end <= $to){
                ^-------  This was never used

另請參閱

$currentDates = array("from" => $start, "to"=>$end);
         Not in the Condition  --^              ^---- To means something else 

你雖然可以簡單

$start = new DateTime("2012-4-12");
$end = new DateTime("2012-12-12");
$dv = new DateInterval('P24D'); // Every 24 days

echo "<pre>";
while ( $start <= $end ) {
    echo "From ", $start->format('Y-m-d');
    $start->add($dv);
    echo " To ", $start->format('Y-m-d'), PHP_EOL;
}

輸出量

From 2012-04-12 To 2012-05-06
From 2012-05-06 To 2012-05-30
From 2012-05-30 To 2012-06-23
From 2012-06-23 To 2012-07-17
From 2012-07-17 To 2012-08-10
From 2012-08-10 To 2012-09-03
From 2012-09-03 To 2012-09-27
From 2012-09-27 To 2012-10-21
From 2012-10-21 To 2012-11-14
From 2012-11-14 To 2012-12-08
From 2012-12-08 To 2013-01-01

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM