Use pattern letter "j" in skeleton to get a localized time string: https://unicode-org.github.io/icu/userguide/format_parse/datetime/index#datetimepatterngenerator
"j" gets mapped to one of "H", "h", "k" or "K".
(PHP 8 >= 8.1.0)
IntlDatePatternGenerator::getBestPattern — Определяет наиболее подходящий формат даты/времени
Определяет, какой формат даты/времени наиболее подходит для конкретной локали.
skeleton
Каркас.
Возвращает формат, принимаемый DateTimeInterface::format() в случае успешного выполнения, или false
в случае возникновения ошибки.
Пример #1 Пример использования IntlDatePatternGenerator::getBestPattern()
<?php
$skeleton = 'YYYYMMdd';
$today = \DateTimeImmutable::createFromFormat('Y-m-d', '2021-04-24');
$patternGenerator = new \IntlDatePatternGenerator('de_DE');
$pattern = $patternGenerator->getBestPattern($skeleton);
echo 'Немецкий: ', \IntlDateFormatter::formatObject($today, $pattern, 'de_DE'), "\n";
$patternGenerator = new \IntlDatePatternGenerator('en_US');
$pattern = $patternGenerator->getBestPattern($skeleton);
echo 'Английский: ', \IntlDateFormatter::formatObject($today, $pattern, 'en_US');
?>
Результат выполнения приведённого примера:
Немецкий: 24.04.2021 Английский: 04/24/2021
Use pattern letter "j" in skeleton to get a localized time string: https://unicode-org.github.io/icu/userguide/format_parse/datetime/index#datetimepatterngenerator
"j" gets mapped to one of "H", "h", "k" or "K".