我一直试图插入一个时间戳到数据库与$ rowUser-> fecha = new Zend_Date();但是当我检查数据库时,我总是在该字段中找到'0000-00-00 00:00:00'。如何使用Zend_Date在db中存储时间戳?
我用MySQL的ALTER语句添加了'fecha'列(带有时间戳的那一列),所以也许这就是这个问题......我不知道。不知道是否我的zend或SQL失败。请Mods,如果问题看起来模糊,请不要关闭该主题,如有必要,我会更改或查找更多信息。
我一直试图插入一个时间戳到数据库与$ rowUser-> fecha = new Zend_Date();但是当我检查数据库时,我总是在该字段中找到'0000-00-00 00:00:00'。如何使用Zend_Date在db中存储时间戳?
我用MySQL的ALTER语句添加了'fecha'列(带有时间戳的那一列),所以也许这就是这个问题......我不知道。不知道是否我的zend或SQL失败。请Mods,如果问题看起来模糊,请不要关闭该主题,如有必要,我会更改或查找更多信息。
对于谁可能关心此问题或未来可能会有类似问题,我找到了解决办法。在用户模式:
$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->出生日期=新Zend_Db_Expr( 'NOW()');但如果有数据库迁移,这可能会很麻烦。
“rowUser-> fecha = Zend_Date :: now() - > toString('yyyyMMddHHmmss');;” – Josh 2013-01-30 14:56:18
我相信你需要使用类似的东西来
$rowUser->fecha = new Zend_Db_Expr('NOW()');
我认为你可以使用Zend_Date组件,但你必须把它转换为正确格式的字符串表示插入。
如果你把一个日期保持在那里,它能工作吗? – wallyk 2011-05-23 22:33:21
@wallyk,由于某种原因,它似乎改变了fecha值,当我更新表中的其他字段,因为它的设置ON UPDATE CURRENT_TIMESTAMP ...但我不知道我应该离开那里,而如果我想要它做创建行上的同样的东西 – 2011-05-23 22:55:14