CodeIgniter无法回显日期时间结果

时间:2017-02-14 13:08:28

标签: php mysql codeigniter datetime codeigniter-3

我使用CodeIgniter 3.1.3构建了一个网站,并且从昨天开始就遇到了这个问题我不知道我做错了什么。它只是简单地从数据库中获取简单的jQuery {{ 1}}在视图中获取数据,并将附加到$.post()

数据库表格中的所有数据都已成功显示,但日期时间除外!

型号:

div

控制器:

public function get_new_kokok($option) {
    if ($option['last_showed']) {
        $query = $this->db->query("SELECT * FROM kokok WHERE id_kokok>$option[last_showed] AND privacy=1 ORDER BY id_kokok ASC LIMIT 1");
    } else {
        $query = $this->db->query("SELECT * FROM kokok WHERE id_kokok=(SELECT MAX(id_kokok) FROM kokok WHERE privacy=1)");
    }
    return $query->result();
}

我得到了:

Result of the first try

来自数据库的原始未格式化日期时间(“2017-02-09 13:46:57”)应该出现在名字“Elena Chereishline”之后的右下方,但事实并非如此。

第25行是:$data = $this->model->get_new_kokok(array('last_showed'=>$this->input->post('last_showed'))); foreach($data as $kokok) { $id_kokok = $kokok->id_kokok; $id_user = $kokok->id_user; $kokok = $this->kokok_escape($kokok->kokok); $fullname = $this->model->get_userinfo('fullname',$id_user); $timee = $kokok->timee; //$time = date('h:i A',strtotime($timee)); echo "<div class=\"clearfix\">"; echo "<div class=\"kokokan\" data-id-kokok=\"$id_kokok\" style=\"display:none\"><p>$kokok</p><small><a href=\"".base_url()."yay/profile/$id_user\">$fullname</a> • $timee</small></div>"; echo "</div>"; } 当我评论该行时,不会发生错误。

  

遇到PHP错误

     

严重性:注意

     

消息:尝试获取非对象的属性

的var_dump:

$timee = $kokok->timee;

所以我的问题是,这是怎么回事?怎么解决这个?我很困惑_(:“3

2 个答案:

答案 0 :(得分:0)

在您的foreach循环内部,您正在重新分配$kokok,该$kokok = $kokok->kokok应该是一个对象。

您正在重新分配$kokok。这是您对象的属性...所以现在当您尝试访问kokok时,它不再是kokok对象,而是原始$kokok->kokok对象的属性... { {1}}。

如果不知道你的函数$this->kokok_escape();是什么,就没有办法进一步提供帮助。

你可以尝试:

$kokok = $this->kokok_escape($kokok);

答案 1 :(得分:0)

最后我知道自己问题的答案。感谢@JethroHazelhurst非常敏锐并注意到这一行有错误:

$kokok = $this->kokok_escape($kokok->kokok);

是的,我使用变量名$kokok = ...,而$kokok是foreach循环使用的变量:

foreach($data as $kokok) {

所以$kokok从用字符串替换的数组搞砸了。

抱歉,谢谢大家。 :&#39)