Kopusha |
|
---|---|
Привет, скорее не про кота а в общем, можем ткнете носом в какой мануал толковый. Фильтрую запрос по дате, что то наподобии: switch ($period) { case 'day': $from = $sys['now'] - 86400; $to = $sys['now']; break; case 'yesterday': $from = $sys['now'] - 86400; $to = $sys['now'] - 172800; break; case 'week': $from = $sys['now'] - 604800; $to = $sys['now']; break; case 'month': $from = $sys['now'] - 2592000; $to = $sys['now']; break; case 'year'://за текущий год $from = $sys['now'] - 31536000; $to = $sys['now']; break; case 'all'://за все время $from = 0; $to = $sys['now']; break; case 'custom'://выбор дат $setfrom = cot_import_date('cust_from', true, false, 'G'); $setto = cot_import_date('cust_to', true, false, 'G'); if (!empty($setfrom) && !empty($setto)) { $from = $setfrom; $to = $setto; } else { cot_error(cot::$L['querydatewrong'].cot::$R['code_error_separator'], ''); $from = 0; $to = $sys['now']; } if ($setfrom <= $setto) { } else { cot_error(cot::$L['querydatewrong'].cot::$R['code_error_separator'], ''); $from = 0; $to = $sys['now']; } break; default: //Весь час $from = 0; $to = $sys['now']; break; } if(!empty($period)) { $where['period'] = "date BETWEEN {$from} AND {$to}"; } else { $where['period'] = "date BETWEEN {$from} AND {$to}"; } Оно естественно дает математический фильтр, для которого "год" это с 22 сент 2021 по 22 сент 2220. case 'custom'://выбор дат дает +- выбрать нужный период. Или "за месяц" = с 1 сентября до 22 сентября.
|
Alex300 |
|
---|---|
$date = (int)date('d'); $month = (int)date('m'); $year = (int)date('Y'); $todayFrom = mktime(0,0,0, $month, $date, $year); $todayTo = mktime(23,59,59, $month, $date, $year); // OR $todayTo = mktime(0,0,0, $month, $date + 1, $year); В Cotonti есть аналогичные функции с префиксом cot_ - они учитывает временную зону сервера / пользователя. Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english... Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/ |
Kopusha |
|
---|---|
Вот тут какая загвоздка. Время у меня хранится в виде 1633471547 Мне нужно выводить статисту календарно. То есть у меня сейчас "За неделю" это за 7 дней (сегодня пятница, выводим с пятницы по пятницу). case 'week': $from = $sys['now'] - 604800; $to = $sys['now']; //порівнюємо з попереднім $from_prev = $sys['now'] - 1209600; $to_prev = $sys['now'] - 604800; break; Но мне поставили задачу вывести "за текущую неделю" - то есть сегодня пятница - вывожу с понедельника по пятницу, с $ponedelnik до $sys['now'] И точно так же За календарный месяц и Календарный год. |