Я пытаюсь захватить любую запись с ctime
сегодня. Для некоторых reaosn, & завтра и & вчера нету каких-либо значений. Если я удалю strtotime()
, их значения являются строковыми представлениями даты, полученной от mktime
. Что я делаю неправильно с strtotime
?Дата строки не конвертировать в timestamp
PHP:
public function fetchToday()
{
$tomorrow = strtotime(mktime(0, 0, 0, date("m") , date("d")+1, date("Y")));
$yesterday = strtotime(mktime(0, 0, 0, date("m") , date("d")-1, date("Y")));
$q = "SELECT * FROM $this->_table WHERE ctime < $tomorrow AND ctime > $yesterday";
return $this->fetchBySelect($q);
}
Ошибка:
ModelFactory - 'ERROR: syntax error at or near "AND" LINE 1: SELECT * FROM motd WHERE ctime < AND ctime >
PostrgeSQL поля таблицы:
ctime timestamp(0) with time zone
Запрос:
SELECT * FROM motd WHERE ctime < 1372402800 AND ctime > 1372230000;
`
вот что оп спрашивает - почему они не получают значения для '$ завтра' и' $ вчера' – sgroves
Ах, извините. Ну, тег был «postgresql», поэтому я предположил, что он рассматривает его как проблему Pg. Мой плохой, убрал несоответствующие/неправильные комментарии. –