【问题标题】:Calculate End time from Start time field in codeigniter from database从数据库的codeigniter中的开始时间字段计算结束时间
【发布时间】:2020-07-01 12:29:20
【问题描述】:

我有一个类似的表结构:

id | name | start_time | duration 
1    xyz      05:00 PM     4

代码

$from_time=9:30 AM;
 $sessionData=$this->db->where('start_time>=',$from_time)->get('user_session')->result();

在上面的代码中,我希望计算结束时间,但我希望根据持续时间计算结束时间,例如在我的情况下,下午 5:00 结束时间应该是晚上 9:00。我只想选择那些行。

【问题讨论】:

    标签: php codeigniter codeigniter-3 codeigniter-2


    【解决方案1】:

    你可以通过使用 Mysql 函数 Date_add 来做到这一点。它看起来像这样:

    SELECT * from `Hours` where DATE_ADD(start_time, INTERVAL duration HOUR) >= '07:00'
    

    我制作了一张如下所示的表格: id 名称 start_time 持续时间

    1   test    05:00:00    6
    2   early test  05:00:00    1
    3   late test   05:00:00    11
    

    当我执行查询时,我确实得到了以下结果:

    id  name    start_time  duration
    1   test    05:00:00    6
    3   late test   05:00:00    11
    

    我不认为您可以为此使用 codeigniter 查询生成器。我建议通过 $result = $this->db->query($your_query); 直接查询数据库;

    但是,如果有用户输入,您需要转义您的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多