想要从mysql获取下周的数据

时间:2015-10-02 10:04:54

标签: mysql codeigniter

我想获取下周的数据。我的约会时间是2015年2月10日,今天是星期五。我想下周从周一开始获取数据。我提到this link。 我正在使用codeigniter,那么在codeigniter中编写sql查询的过程是什么?

1 个答案:

答案 0 :(得分:0)

首先,您需要获取下周一的日期

$next_monday = new DateTime('next monday');

然后在周末结束(如果需要):

$date = $next_monday->format('Y-m-d').' 23:59:59'; //Get monday at 23:59
$end_week  = strtotime("+7 day", $date); //Get  sunday at 23:59

然后在您的Codeigniter模型中,使用Active Records

public function nextWeekData($monday, $sunday){
    $this->db->where("your_date_field >= '". $monday->format('Y-m-d H:i:s')."' AND your_date_field <= '". $sunday->format('Y-m-d H:i:s')."'");
    $this->db->get('your_table');
    return $this->db->result_array(); // If you want an array
    // return $this->db->result(); // If you want StdClass
}

因此控制器发出的呼叫应为:

$this->my_model->nextWeekData($next_monday, $end_week);

如果不需要上限,只需删除模型中WHERE语句的$end_week和第二句。

我认为这应该做到。代码未经测试。 重要:注意引号在哪里。