【问题标题】:Getting data between two date range in codeigniter在codeigniter中获取两个日期范围之间的数据
【发布时间】:2020-07-25 15:42:00
【问题描述】:

我正在尝试获取日期之间的数据。从日期选择器中选择的日期。甲酸盐就像这样 04/13/2020 - 04/13/2020 从日期选择器中选择。我的查询是这样的

 public function reservation($reservation)
    {
    $this->db->select("*");
    $this->db->from('details');
    $this->db->where("DATE_FORMAT(date,'%Y-%m-%d') > '$reservation'");

        $query = $this->db->get();
        return $query->result();
    } 

【问题讨论】:

    标签: php mysql codeigniter datetime


    【解决方案1】:

    我希望这对你有用

     public function reservation($first_date,$second_date)
     {
        $this->db->select("*");
        $this->db->from('details');
        $this->db->where("DATE_FORMAT(date,'%Y-%m-%d') >='$first_date'");
        $this->db->where("DATE_FORMAT(date,'%Y-%m-%d') <='$second_date'");
        $query = $this->db->get();
        return $query->result();
     }
    

    【讨论】:

    • 我从日期选择器中选择日期,就像 (04/13/2020 - 05/13/2020) 格式一样,两个日期都存储在同一个变量中,而不是单独的变量中。比如 $reservation="04/13/2020 - 05/13/2020";
    • 不像 $first_date=04/13/2020; $second_date=05/13/2020;
    • 您可以使用explode函数并将开始日期和结束日期中的日期分开示例:$str = "04/13/2020 - 05/13/2020"; print_r (explode("-",$str));输出:数组([0] => 2020 年 4 月 13 日 [1] => 2020 年 5 月 13 日)
    • 你需要根据问题编辑你的代码,使用explode功能后对我有用
    • @jamilshah:听起来不错,对你有用。您可以对答案进行投票,以便将来对其他人有所帮助。
    【解决方案2】:

    试试这个:

    $this->db->where("DATE_FORMAT(start_date,'%Y-%m-%d')",'>=',$first_date)
    ->where("DATE_FORMAT(end_date,'%Y-%m-%d')",'<=',$first_date);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-20
      • 1970-01-01
      • 2022-11-06
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      • 2019-03-24
      相关资源
      最近更新 更多