Я работаю над реализацией графика продаж. У меня есть ось Х. ВВерху на странице есть фильтр, который позволяет ввести диапазон дат, то есть сначала вводим дату от, затем дату до.
Мне необходимо определить, как выводить даты на оси Х.
Я предполагаю делать это так:
К примеру, если человек ввел 2 даты в пределе одного месяца, или между месяцами, но не более чем скажем 31 день, то мне необходимо получить массив, где будут элементы по дням.
То есть ось Х будет вида: 01.10.2017, 02.10.2017,...31.10.2017.
Но если же пользователь ввел 2 даты в диапазоне больше чем 31, то необходимо уже вывести массив из 2 дат. Первый элемент это первый месяц, второй это второй.
В этом случае на оси Х должно быть 10.2017, 12.2017
Если человек ввел диапазон более чем 12 мес, то уже необходимо выводить годами.
В этом случае на оси Х должно быть 2016, 2017
Подсчет количества дней между двумя датами я делаю так:
$datetime1 = date_create("01.05.2017");
$datetime2 = date_create("31.05.2017");
$interval = date_diff($datetime1, $datetime2);
$days = $interval->format('%a');
if($days <= 31)
{
$period = new DatePeriod(
new DateTime($dateFrom),
new DateInterval('P1D'),
(new DateTime($dateTo))->modify('+1 days')
);
//Абсцисса Х
$daysArray;
foreach( $period as $date) {
$daysArray .= "'".$date->format('Y-m-d')."',";
}
}
if($days > 31 && $days < 365)
{
//Тут уже необходимо выводить не дни а месяца в формате m.Y
$period = new DatePeriod(
new DateTime($dateFrom),
new DateInterval('P1D'),
(new DateTime($dateTo))->modify('+1 month')
);
//Абсцисса Х
$daysArray;
foreach( $period as $date) {
$daysArray .= "'".$date->format('Y-m-d')."',";
}
}
После echo $daysArray я получаю то что мне нужно. Но мой код работает только в приделах 31 дня, если я добавлю условие >31 дня то мне уже необходимо вывести только даты по месяцам. Я по аналогии с <31 вывожу но в modify ставлю +1 month но в результате я получаю по дням, а не по месяцам.
Вопрос как это реализовать?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Итак, я от пользователя получаю название таблицы, из которой он хочет получить данные, и я должен проверить наличие этой таблицыКак я понял,...
Есть шаблон MVC на с которым я разобрался и могу делать простенькие задачки используя MVCНо проблема в роутере, он так прописан, что не запускается...
Выдает ошибку: Parse error: syntax error, unexpected ')' in /home/user167/devildropru/html/epicdrop/connector