Привет, скорее не про кота а в общем, можем ткнете носом в какой мануал толковый.
Фильтрую запрос по дате, что то наподобии:
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.
дает +- выбрать нужный период.
Но надо сделать "за сегодня" = с 0 ночи реально сегодня (по времени системному сервера и настроек сайта - они совпадают) до 23.59 ночи этого дня
Или "за месяц" = с 1 сентября до 22 сентября.
Может у кого то есть готовый код?
Заранее спасибо!