2016-12-11 10 views
0

私は2つの日付を繰り返していますが、その間に終日印刷します。 は私のループですcarbonを使用しています。 isSameDayがtrueを返してもループは停止しません。 と比較CarbonのisSameDayメソッドForステートメントで無限ループを作成

$check_in = new Carbon($check_in); 
    $check_out = new Carbon($check_out); 

    for(
     $check_in; 
     $check_in->addDay(); 
     $check_in->isSameDay($check_out) 
    ) { 
     print_r($check_in->day); 
    } 

は私がの冒頭で一度、無条件に評価(実行)される

print_r($check_in->addDay(4)->isSameDay($check_out)); 
// 12/20 + 4 day = 12/24 return true. 

答えて

0

はので、私はループのドキュメント

最初の式(expr1の)ために戻って参照する次のコードをテストしましたループ。

各繰り返しの最初に、expr2が評価されます。 TRUEと評価されると、ループは継続し、ネストされたステートメントが実行されます。 FALSEと評価された場合、ループの実行は終了します。

各繰り返しの最後に、expr3が評価(実行)されます。

ので、私のためには、それがあるべき間違っている

for($check_in; $check_in->lte($check_out); $check_in->addDay(1)) { 

} 
関連する問題