【问题标题】:Using something like NOW() in a Codeigniter insert array在 Codeigniter 插入数组中使用类似 NOW() 的东西
【发布时间】:2012-10-19 01:27:33
【问题描述】:

因为 NOW() 是一种 MySQL 方法,我似乎无法让它在下面的数组中工作。什么是我可以在 PHP 中使用的函数,它将与 NOW() 方法执行相同的操作。

$data = array('node1id' => $leader_id,
              'node2id' => $idgen,
              'friendsSince' => NOW(),
$this->db->insert('users', $data);

【问题讨论】:

标签: php codeigniter


【解决方案1】:

使用 codeigniter 日期助手并保持相同的符号:

$this->load->helper('date');

$data = array('node1id' => $leader_id,
          'node2id' => $idgen,
          'friendsSince' => now(),
$this->db->insert('users', $data);

CI 文档中有关日期助手的更多信息:http://ellislab.com/codeigniter/user_guide/helpers/date_helper.html

【讨论】:

  • mysql 函数 NOW() 返回适合时间戳或日期时间字段的当前日期和时间。 codeigniters 日期助手中的 now() 函数以 unix 时间戳返回时间。如果您的字段是 DATETIME 或 TIMESTAMP,则此答案将不起作用。其他两个答案会起作用,Kamrul 的答案是最好的。
【解决方案2】:

您可以根据需要使用date("Y-m-d");date("Y-m-d H:i:s"); DATE vs DATETIME

【讨论】:

  • ^ 我是 Claudrian,我支持这条信息!手动操作,为您提供更多动力。
  • 也许,你需要这样做: date("Y-m-d H:i:s",strtotime($time-string));
【解决方案3】:

试试

$this->db->set('node1id', $leader_id);  
$this->db->set('node2id', $idgen);
$this->db->set('friendsSince', 'NOW()', FALSE); 

$this->db->insert('users');

每当使用 MySQL 函数时,使用 FALSE 作为第三个参数。

【讨论】:

    猜你喜欢
    • 2016-07-25
    • 2021-01-16
    • 1970-01-01
    • 2010-10-26
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多