Изучая Zend Framework столкнулся с тривиальной задачей — нужно вставить дату изменения новости в БД. Столбец с датой в БД был типа TIMESTAMP.
Сначала в модели пробовал сделать так
$data = array('title' => $title, 'text' => $text, 'date' => Zend_Date::now() ); $this->getAdapter()->insert($this->_name, $data);
В таблицу вместо даты вставлялось значение по умолчанию('0000-00-00 00:00:00'). Проверив, что возвращает стало ясно, что возвращается не строка, а объект Zend_Date.
Чтобы исправить ошибку я сделал следующее:
$date = Zend_Date::now(); $data = array('title' => $title, 'text' => $text, 'date' => $date->toString('YYYY-MM-dd HH:mm:ss') ); $this->getAdapter()->insert($this->_name, $data);
По-моему это самое очевидное решение, но, наверно, есть более «правильные» способы

22 Окт 2010 в 2:42 дп
Да, можно сделать проще — установить значение по-умолчанию как CURRENT_TIMESTAMP у колонки таблицы.
22 Май 2011 в 6:47 пп
можно еще 'data' => 'NOW ()'
02 Июл 2011 в 9:53 пп
Большое спасибо. Уже второй день ищу решение даной задачи.