Я пытаюсь создать массив дат погашения для системы бронирования в Laravel 4. В моей базе данных есть одна тестовая строка с начальным значением 2016-01-24 и end_date 2016-01- 29.Приращение дат с помощью Carbon
Это код, который тянет строку и перебирает даты с использованием углерода для увеличения на один день & добавить его в массив:
$reserved = Reservation::where('property_id', $property->id)->get();
$blackoutDays = [];
foreach($reserved as $r)
{
$start = new \Carbon\Carbon($r->start_date);
$end = new \Carbon\Carbon($r->end_date);
$days = $start->diff($end)->days;
for($i = 0; $i <= $days; $i++)
{
$date = '';
$date = $start->addDays($i);
$blackoutDays[] = $date->format('Y-m-j');
}
}
То, что я пытаюсь получить в $ blackoutDays является:
[2016-01-24 »,« 2016-01-25 »,« 2016-01-26 »,« 2016-01-27 »,« 2016-01-28 »,« 2016- 01-29 "]
Но что я actua lly получает это:
[2016-01-24 "," 2016-01-25 "," 2016-01-27 "," 2016-01-30 "," 2016-02-3 " "," 2016-02-8 "]
Кто-нибудь знает, почему это происходит/как его исправить? Есть ли лучший способ сделать это?
спасибо, работает отлично! Теперь я собираюсь спрятаться, пока не перестану чувствовать себя noob! –