Рейтинг:1

как преобразовать дату в метку времени, используя часовой пояс

флаг ls

Я использую strtotime для преобразования даты в отметку времени, но она работает неправильно. Я знаю его относительно часового пояса. Часовой пояс моего магазина drupal — денвер. Я не уверен, почему он не показывает правильную дату. разница примерно в один день. поэтому последнюю дату я использовал 31, но я получаю последнюю дату 30, а не 31

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

date_default_timezone_set (drupal_get_user_timezone());
$startdate = strtotime(\Drupal::request()->query->get('startdate')); // 2021-12-01
$endate = strtotime(\Drupal::request()->query->get('enddate')); //2021-12-31
$database = \Drupal::database();
если (! пусто ($ startdate)) {
$userrecord = $database->query("ВЫБЕРИТЕ почту, доступ ОТ users_field_data, ГДЕ доступ МЕЖДУ $startdate и $endate")->fetchAll(); 

Вот веточка, где я назвал дату

{{ result.access|format_date('custom', 'F j, Y')|e }}
флаг my
Этот запрос БД открыт для внедрения SQL. Прочтите https://www.drupal.org/docs/drupal-apis/database-api/static-queries#placeholders, чтобы узнать, как безопасно обрабатывать параметры.
Рейтинг:2
флаг cn

Drupal всегда хранит время в формате UTC, а не в местном времени. Также временные метки Unix по определению указаны в формате UTC.

Вы можете преобразовать локальную строку даты в метку времени, создав объект \DateTime:

$timestamp = (новый \DateTime('2021-12-31'))->getTimestamp();

Который использует часовой пояс PHP по умолчанию или указав свой собственный часовой пояс:

$timestamp = (new \DateTime('2021-12-31', new \DateTimeZone('America/New_York')))->getTimestamp();

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.