tp5的时间查询,查询时间戳是否在某一天中

需求, 查询时间是否在某一天中, 例如明天

遇到的问题:

strtotime() 字符串转时间戳   date() 时间戳转为字符串

1. strtotime(date('Y-m-d')) 返回今天的时间戳, PS: 这里要注意: 是今天凌晨0点的时间戳

strtotime('2019-11-14 15:00:00') 返回这个时刻的时间戳

2. strtotime(date('Y-m-d H:i:s'))  注意, 这种情况返回的就是现在此刻的时间戳.

3. strtotime(date('Y-m-d H:i:s'))  和 strtotime(date('Y-m-d h:i:s')) 这里要注意, H大写表示24小时制, h小写表示12小时制 T.T

4. 时间戳转为日期字符串 date('Y-m-d H:i:s', 1569381203)

5. tp5查询如下,这里注意, 明天凌晨 date('Y-m-d', strtotime('+1 day')), 后天凌晨 date('Y-m-d', strtotime('+2 day')), 这里不能加上 H:i:s 如果加上了, 那就格式化到此刻了.就不是凌晨0点了.

Db::name('cai')->whereTime('yuyue_time', 'between', [date('Y-m-d', strtotime('+1 day')),date('Y-m-d', strtotime('+2 day'))])->find()

如上,用到了 between 方法

// 时间区间查询
Db::table('think_user')->whereTime('birthday', 'between', ['1970-10-1', '2000-10-1'])->select();

这里的区间, 都是表示 当日的凌晨0点.这一点要注意. 

所以例如今天是 2019年09月25日11:22:21, 我要获取明天一天的区间. 就要用

date('Y-m-d', strtotime('+1 day')) ,不能加H:i:s  返回的是 2019-09-26 没有分秒表示0点0分0秒

date('Y-m-d', strtotime('+2 day')) ,不能加H:i:s  返回的是 2019-09-27 没有分秒表示0点0分0秒

所以上面2个区间加一起, 就是 9月26日一天的整个区间!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值