有没有办法通过 Zend\Db 和/或 TableGateway insert()/update() 语句在 ZF2 (2.0.0beta4) 的当前构建中包含 MySQL 表达式,如 NOW()?
这是邮件列表上的相关帖子,尽管尚未得到答复:http: //zend-framework-community.634137.n4.nabble.com/Zend-Db-Expr-and-Transactions-in-ZF2- db-td4472944.html
ZF1似乎使用了类似的东西:
$data = array(
'update_time' => new \Zend\Db\Expr("NOW()")
);
在浏览完 Zend\Db\Sql\Expression 之后,我尝试了:
$data = array(
'update_time' => new \Zend\Db\Sql\Expression("NOW()"),
);
但是得到以下错误:
Catchable fatal error: Object of class Zend\Db\Sql\Expression could not be converted to string in /var/www/vendor/ZF2/library/Zend/Db/Adapter/Driver/Pdo/Statement.php on line 256
如此处推荐:http: //zend-framework-community.634137.n4.nabble.com/ZF2-beta3-Zend-Db-Sql-Insert-new-Expression-now-td4536197.html我目前只是设置日期与 PHP 代码,但我宁愿使用 MySQL 服务器作为日期/时间的单一事实来源。
$data = array(
'update_time' => date('Y-m-d H:i:s'),
);
谢谢,我很感激任何意见!