Время PHP, включая первый день - PullRequest
0 голосов
/ 28 августа 2018

У меня есть метка времени в базе данных 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

Как включить весь первый день в переменную начала? (начать с 0 или игнорировать время)

Ответы [ 2 ]

0 голосов
/ 28 августа 2018

Функция даты в PHP имеет два разных модификатора: H и h h отображает часы в 12-часовом формате (поэтому полночь равна 12 ... если вы добавите модификатор AM / PM, вы увидите 12:00:00 am)

попробуй

$begin = date("Y-m-d H:i:s", $begin);

Выход будет 00:00:00, как вы ожидаете

0 голосов
/ 28 августа 2018

Вы используете неправильный формат часа, вы должны сделать:

//     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-часовой формат часа с ведущими нулями
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...