Php CodeIgniter:未定义的属性:stdClass::$date
当我试图使CodeIgniter模型与数据库正确通信时,我遇到了一个严重的问题 在我找到的答案中,我读到我不应该提出这样的问题:Php CodeIgniter:未定义的属性:stdClass::$date,php,mysql,codeigniter,date-format,Php,Mysql,Codeigniter,Date Format,当我试图使CodeIgniter模型与数据库正确通信时,我遇到了一个严重的问题 在我找到的答案中,我读到我不应该提出这样的问题: $query2 = $this->db->query("SELECT patient_id FROM visits WHERE date LIKE DATE_FORMAT('$row->date', '%Y-%m-%d') GROUP BY date"); $thi
$query2 = $this->db->query("SELECT patient_id FROM visits
WHERE date LIKE DATE_FORMAT('$row->date', '%Y-%m-%d') GROUP BY date");
$this->db
->select('patient_id')
->from('visits')
->like('date', "DATE_FORMAT($row->date, '%Y-%m-%d')", FALSE);
$query = $this->db->get();
但就像这样:
$this->db->select('patient_id');
$this->db->from('visits');
$this->db->like('date', "DATE_FORMAT($row->date, '%Y-%m-%d')");
尽管如此,我仍然不知道如何让它工作。我也不确定我是否正确地使用了$this->db->like。您只需要调用:
$query = $this->db->get();
为了得到结果。此外,您不需要每次$this->db,因此您的查询可能如下所示:
$query2 = $this->db->query("SELECT patient_id FROM visits
WHERE date LIKE DATE_FORMAT('$row->date', '%Y-%m-%d') GROUP BY date");
$this->db
->select('patient_id')
->from('visits')
->like('date', "DATE_FORMAT($row->date, '%Y-%m-%d')", FALSE);
$query = $this->db->get();
你之前的问题是什么?您是否确认存在“日期”行,并且返回了一个对象?您需要在like()调用中将FALSE作为第三个参数传递,否则整个查询表达式将被转义并进行比较,因为我非常感谢您的答案!)这实际上是一个很好的干净的解决方案。而且肯定更容易阅读。有时候你只需要另一个大脑;)再次感谢!