Php 如何在CodeIgniter中仅从datetime获取日期?
我在MySQL表中有如下数据:Php 如何在CodeIgniter中仅从datetime获取日期?,php,mysql,codeigniter,Php,Mysql,Codeigniter,我在MySQL表中有如下数据: ID dates value 1 2011-12-18 10:11:12 test1 2 2011-12-18 12:11:12 test2 3 2011-11-18 10:19:11 test3 当我试图在模块中获取值时,它不起作用,我编写的代码如下: $query=$this->db->get_where('datas', array('dates' =&
ID dates value
1 2011-12-18 10:11:12 test1
2 2011-12-18 12:11:12 test2
3 2011-11-18 10:19:11 test3
当我试图在模块中获取值时,它不起作用,我编写的代码如下:
$query=$this->db->get_where('datas', array('dates' => date('Y-m-d')));
我需要从全天获取数据,就像只获取2011-12-18的数据一样
谢谢试试
$this->db->like()代码>
就这样吧
$query=$this->db->like('dates', array('dates' => date('Y-m-d')));
%
将自动添加
此外,您还将数据作为密钥,并且日期应基于数据库结构。您可以执行以下操作:
在表中,创建一个名为ts的int字段
将数据插入此表时,请使用time()方法将时间戳插入ts
$data = array(
'dates' => '<your date value>' ,
'value' => '<your value>' ,
'ts' => time()
);
$this->db->insert('datas', $data);
$data=array(
'日期'=>'',
'值'=>'',
'ts'=>time()
);
$this->db->insert('datas',$data);
然后,查询时:
使用mktime()方法为今天的开始和结束创建时间戳范围
$start = mktime() - date('h')*3600;
$end = mktime();
$this->db->where('ts >=', $start);
$this->db->where('ts <=', $end);
$start=mktime()-date('h')*3600;
$end=mktime();
$this->db->where('ts>=',$start);
$this->db->where('ts试试这个:
$date=“2018-09-19”;
$this->db->select('*');
$this->db->from('tbl_name');
$this->db->where('DATE(DATE\u time\u col)'$DATE);
$query=$this->db->get();
$res=$query->result();