Я пытаюсь создать функцию получения заявления, и у меня есть некоторые проблемы, определяющие диапазон дат.Получить данные, основанные на году и месяце в cakephp
Данные будут передаваться с помощью метода GET в следующем формате:? год = гггг & месяц = мм Соответствующий столбец таблицы имеет DATETIME тип (2012-02-01).
Я проверил класс TimeHelper и, в частности, TimeHelper::daysAsSql($begin, $end, $fieldName, $timezone = NULL)
, но я не уверен, применим ли он для этого случая.
Я думал, могу ли я создать дату в формате Y-m, используя две переменные год и месяц, а затем использовать его в условиях для извлечения данных, но я уверен, что есть более эффективный и правильный способ. Может ли кто-нибудь помочь?
$user_id = $Client['Client']['id'];
$year = $this->request['url']['year'];
$month = $this->request['url']['month'];
//$date_created = date('Y-m');
if (!empty($user_id) && (!empty($date_created))) {
$Reports = $this->Report->find('all', array(
'fields' => array('amount','currency','date_created','invoice_no'),
'conditions' => array(
'Report.client_id'=> $user_id,
'Report.date_created >=' => $date_created,
'Report.date_created <=' => $date_created
),
)
);
Основываясь на условиях в образце, он будет работать только в том случае Report.date_created равен $ DATE_CREATED. Потому что он не может быть меньше, чем, и больше в одно и то же время. Вы имели в виду наличие других условий, таких как date_start и date_end? –