Я хочу вернуть все дни между определенным диапазоном.
Моя идея состояла в том, чтобы преобразовать начальную и конечную дату для Отметка времени Unix и перебрать их добавления 86400 (секунд в день):Цитирование через дни
<?php
$start = strtotime('2013-01-01');
$end = strtotime('2013-02-01');
for($i=$start; $i<=$end; $i+86400)
{
echo date("l, d.m.y", $i) . "\n";
}
?>
К сожалению, я только получаю один и тот же день:
Tuesday, 01.01.13
Tuesday, 01.01.13
Tuesday, 01.01.13
...
Неверный оператор. Попробуйте '$ i + = 86400' вместо' $ i + 86400'. И пока вы на нем, переключитесь на [Объекты DateTime] (http://us.php.net/manual/en/datetime.add.php) и явно добавьте «1 день» вместо «86400 секунд». – DCoder
@DCoder ['DatePeriod'] (http://php.net/dateperiod) был создан именно для этого типа задач. – salathe
Если вы хотите присвоить какое-то значение, вам нужен оператор assignemnt: http://www.php.net/language.operators.assignment - и если вы хотите что-то повторить, вы должны пройти через трафик, например http: // php .net/dateperiod;) - Также позаботьтесь о том, чтобы не все дни имели 86400 секунд. Просто говорю, не то, чтобы вы так думали. – hakre