【问题标题】:Inserting current date to MySql using Zend Date使用 Zend Date 将当前日期插入 MySql
【发布时间】:2011-09-28 16:35:27
【问题描述】:

我有一个基于 Zend 框架的网站。有一个表格供用户填写,输入的数据插入到数据库中。

用户没有输入日期/时间。我想根据当前日期/时间填充数据值。日期 field 的类型为 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') 填充
  • 干杯伙伴!这让我明白了!

标签: php zend-framework datetime date zend-db


【解决方案1】:

正确答案是

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

您可以尝试使用类似的方法从 php 创建当前时间戳

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

【讨论】:

    【解决方案2】:

    好吧,我已经为 SqlServer 完成了这项工作,但我认为对于 MySql,您只需要更改所需的 db-expression。

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

    希望对你有帮助。

    【讨论】:

    • 感谢您的帮助!!不完全是我需要的,但感谢您为我正在寻找的东西提供了另一个维度..
    【解决方案3】:

    在您的表类中使用以下代码:

        $tme =new Zend_Date();
        $data['tme']=$tme->now();
        $this->insert($data);
    

    如果您有一列名称为 tme 且类型为 datetime ,则此代码将满足您的要求!

    【讨论】:

      猜你喜欢
      • 2013-11-23
      • 2015-02-28
      • 2011-12-20
      • 2012-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-19
      • 1970-01-01
      相关资源
      最近更新 更多