我一直在尝试使用$ rowUser-> fecha = new Zend_Date();向数据库插入时间戳。但是当我检查数据库时,我总是在该字段中找到'0000-00-00 00:00:00'。
我添加了'fecha'列(带有时间戳的列)和MySQL ALTER语句,所以也许这就是问题...我不知道。不确定这是我的zend还是SQL失败了。请修改,如果问题看起来模糊,请不要关闭主题,如有必要,我会更改或寻找更多信息。
答案 0 :(得分:6)
对于任何可能关心此事的人或将来可能会遇到类似问题的人,我已经找到了解决这个问题的方法。在用户模型中:
$rowUser = $this->createRow();
if($rowUser) {
// update the row values
$rowUser->email = $email;
$rowUser->password = md5($password);
$rowUser->url = $url;
$rowUser->responsable = $responsable;
$rowUser->role = $role;
$rowUser->fecha = Zend_Date::now()->toString('yyyyMMddHHmmss');; // This is the important bit
$rowUser->save();
//return the new user
return $rowUser;
}
你也可以使用$ rowUser-> fecha = new Zend_Db_Expr('NOW()');但如果有数据库迁移,那可能会很麻烦。
答案 1 :(得分:3)
我相信你需要使用与
类似的东西$rowUser->fecha = new Zend_Db_Expr('NOW()');
我认为您可以使用Zend_Date组件,但您必须将其转换为正确的格式作为要插入的字符串表示。