basstk
V2EX  ›  PHP

问个问题,忽略日期,就用时间段对比,如何判断当前时间段是否在 08:00:00 跟 08:30:00 的范围内?

  •  
  •   basstk · Dec 1, 2018 · 6023 views
    This topic created in 2898 days ago, the information mentioned may be changed or developed.

    数据库 2 个字段存储了 2 个时间段: t1=08:00:00 跟 t2=08:30:00

    忽略日期,就用时间段对比,如:如何判断当前时间段 09:30:00 是否在 08:00:00 跟 08:30:00 的范围内?

    15 replies  •  2018-12-02 08:11:16 +08:00
    Midnight
    Midnight
    Dec 1, 2018
    1
    大于小于啊
    ysc3839
    ysc3839
    Dec 1, 2018 via Android
    2
    比较当天的秒数。
    jisxu
    jisxu
    Dec 1, 2018 via Android❤️1
    3
    java 的话,去看看 LocalTime 这个类,parse,然后直接 compareTo 完事
    chinvo
    chinvo
    Dec 1, 2018 via iPhone
    4
    推荐一个库,叫 Carbon,PHP 的日期时间增强
    Kbyte
    Kbyte
    Dec 1, 2018
    5
    一减不就完了
    947211232
    947211232
    Dec 1, 2018
    6
    strtotime
    zxcvsh
    zxcvsh
    Dec 1, 2018 via iPhone
    7
    如果是取出来对比好像方法挺多的
    gowa2017
    gowa2017
    Dec 1, 2018 via iPhone
    8
    sql hour(date) =8 and minute(date) <30
    jugelizi
    jugelizi
    Dec 1, 2018
    9
    不就是 8000 和 8300 对比吗
    lhx2008
    lhx2008
    Dec 1, 2018 via Android
    10
    楼上正解,转成四位的就好了
    dante3imin
    dante3imin
    Dec 1, 2018
    11
    time() > mktime(8, 0, 0) && time() < mktime(8, 30, 0)
    xpresslink
    xpresslink
    Dec 1, 2018
    12
    把 9:30 转成 用字符串 "8000"/"8300" 或整数 8000/8300 直接比较就可以了。
    realpg
    realpg
    Dec 1, 2018
    13
    PHP 的 STRTOTIME 比较强悍
    honeycomb
    honeycomb
    Dec 1, 2018 via Android
    14
    不想写 SQL 的话,导出成 localtime 类以后可以直接比较。
    qinrui
    qinrui
    Dec 2, 2018 via iPhone
    15
    case when substr(time_str,12,8)>“ 08:00:00 ” and
    substr(time_str,12,8)<“ 08:30:00 ” then 1 else 0 end
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1911 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 08:38 · PVG 16:38 · LAX 00:38 · JFK 03:38
    ♥ Do have faith in what you're doing.