代码如下:
echo $a = date('H:i');
echo "-----------------";
echo $b = '8:00';
echo "-----------------";
$c = $a < $b;
var_dump($c);
die;
…………………………
输出结果:
18:30-----------------8:00-----------------bool(true)
一个时间选择器引发的坑,店铺的可以设置开店的时间,通常是 8 点~22 点,然后后台的 24h 时间选择器( timepicker ),默认时间是不带 0 的,就是 8 点 php 输出是 08,但是时间选择器输出是 8,然后代码里我是这么写的:
if (date('H:i') < $store->open_time) {
echo '店铺尚未营业';
}
疑问:为什么'08:00' 会小于 '8:00' ???
1
lwbjing 2018-04-18 18:42:23 +08:00
0 难道不小于 8 吗?
|
2
cxbig 2018-04-18 18:53:38 +08:00 1
比对日期时间用相关函数先处理,不要把字符串直接放到代数逻辑里操作。
|
3
moult 2018-04-18 20:01:38 +08:00 2
|
4
solaro OP 阿西吧,谢谢
顺便求大神改一下这个,有大神有空可以往里加一个参数,当 24 小时制的时候显示 ,小时小于 10 前面可以自动补 0 https://github.com/jdewit/bootstrap-timepicker/releases |
5
msg7086 2018-04-18 23:11:16 +08:00
比较时间不比较时间却比较字符?这操作谁教你的……
|
6
IceBay 2018-04-19 01:07:22 +08:00
请转换成时间戳进行比较
|
7
wd 2018-04-19 08:55:23 +08:00 via iPhone
python 门槛低
|
9
2010 2018-04-19 09:21:09 +08:00 via Android
时间戳
|