gpt4 book ai didi

php - ZF2 Zend\Db 使用 Mysql 表达式插入/更新(Zend\Db\Sql\Expression?)

转载 作者:可可西里 更新时间:2023-11-01 12:31:28 27 4
gpt4 key购买 nike

有没有什么方法可以通过 Zend\Db 和/或 TableGateway insert()/update() 语句在当前版本的 ZF2 (2.0.0beta4) 中包含像 NOW() 这样的 MySQL 表达式?

这是邮件列表中的一篇相关帖子,但尚未得到回复: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'),
);

谢谢,我感谢任何意见!

最佳答案

Zend_Db_Sql_Expression 现在对我有用。

$data = array(
'update_time' => new \Zend\Db\Sql\Expression("NOW()"),
);

关于php - ZF2 Zend\Db 使用 Mysql 表达式插入/更新(Zend\Db\Sql\Expression?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11183061/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com