使用Zend Date将当前日期插入到MySql中

4

我有一个基于Zend Framework的网站。有一个表单供用户填写,输入的数据会被插入到数据库中。

用户不需要输入日期/时间。我希望根据当前的日期/时间来填充数据值。日期字段的类型是datetime

我一直收到以下错误消息:

Notice: Array to string conversion in D:\wamp\www\CNFSORG\library\Zend\Db\Statement\Pdo.php on line 228

我已经尝试过以下操作:
<?php $date = new Zend_Date(); ?>

我也尝试了以下方法:

<?php $date = new Zend_Db_Expr('NOW()'); ?>
<?php $date = new Zend_Db_Expr('CURDATE()'); ?>

我希望有人能够指引我正确的方向,非常感激。
提前致谢...

也许有一种全 Zend 方案的方式,但我使用的所有 DATETIME 字段都是通过 date('Y.m.d - H:i:s') 进行填充的。 - Sam
干杯,伙计!这就解决了我的问题!! - user949852
3个回答

7

正确答案是

<?php $date = new Zend_Db_Expr('NOW()'); ?>

你可以尝试使用类似以下代码从php中创建当前时间戳:

您可以尝试使用类似以下代码从php中创建当前时间戳:

<?php  $date = new \DateTime(); ?>

1

嗯,我已经为SqlServer做过这个了,但我认为对于MySql,你只需要更改所需的db表达式即可。

$this->_colocation = new Application_Model_Colocation();
$solicitacao = $this->_colocation->find($post['hdnIdSolicitacao'])->current();
$solicitacao->data_chegada = new Zend_Db_Expr('getdate()');
$solicitacao->save();

希望能有所帮助。


谢谢您的帮助!虽然不完全符合我的需求,但感谢为我寻找另一种视角。 - user949852

0
在你的表格类中使用这段代码:
    $tme =new Zend_Date();
    $data['tme']=$tme->now();
    $this->insert($data);

如果您有一个名为tme且类型为datetime的列,此代码将实现您想要的功能!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接