(PHP 8 >= 8.4.0)
IntlDateFormatter::parseToCalendar — Разбирает строку в метку времени, которой обновляет открытый календарь
$string, int &$offset = null): int|float|false
Метод преобразует строку string в метку времени — количество секунд, которое прошло с начала эпохи Юникс.
Преобразование начинается с позиции offset и захватывает максимально возможную часть входного значения.
Метод работает аналогично методу IntlDateFormatter::parse(),
за исключением обновления часового пояса форматировщика с учётом
информации о часовом поясе, которая содержится в разобранной строке
string.
stringoffsetstring при отсчёте с нуля.
Параметру offset присвоится значение, которое соответствует количеству символов от начала входной строки до позиции окончания разбора,
если до завершения разбора строки string не возникнет ошибка.
При ошибке параметру присваивается позиция окончания разбора.
При offset > strlen($string) разбор немедленно завершается.
Метод возвращает метку времени разобранного значения или false, если значение невозможно разобрать.
Пример #1 Пример преобразования строки с датой в метку времени методом IntlDateFormatter::parseToCalendar()
<?php
$fmt = new IntlDateFormatter(
'en_US',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN
);
echo $fmt->parseToCalendar('Wednesday, December 20, 1989 at 4:00:00 PM Pacific Standard Time');Результат выполнения приведённого примера:
630201600