我在MySql数据库中有一个时间戳。格式为:2018-08-28 12:39:59
我想选择不同的时间段。我的时间部分有问题。例如:
$begin = strtotime("first day of this month midnight");
$begin = date("Y-m-d h:i:s", $begin);
如果我回显$ begin它会给我:2018-08-01 12:00:00
因此,它不包括例如:2018-08-01 01:00:00
我一直在搜索,官方文档说:
“午夜”时间设置为00:00:00
http://php.net/manual/en/datetime.formats.relative.php
如何将整个第一天都包含在begin变量中? (从0开始或忽略时间)
答案 0 :(得分:1)
您使用错误的小时格式,应该这样做:
// uppercase H --v
$begin = date("Y-m-d H:i:s", $begin);
// Output: 2018-08-01 00:00:00
echo $begin;
h
:一个小时的12小时制,带有前导零H
:一小时的24小时制,带有前导零答案 1 :(得分:1)
PHP的date函数具有两个不同的修饰符:H和h h以12小时格式显示小时(因此午夜是12 ...如果添加了AM / PM修改器,则会看到12:00:00 am)
尝试
$begin = date("Y-m-d H:i:s", $begin);
您将按预期输出00:00:00