CakePHP 4 Формат даты для FormHelper-> date() как перейти в британский формат
У меня в шаблоне есть следующий код:
<?= $this->Form->date('selected_date', ['required' => true]) ?>
Это показывает прекрасное новое динамическое средство выбора даты, но с американским форматом "мм / дд / гггг". Я хочу "дд / мм / ГГГГ"
В app.php я установил для APP_DEFAULT_LOCALE значение en-GB. В AppController.php я установил следующее:
I18n::setLocale('en-GB');
Time::setDefaultLocale('en-GB'); // For any mutable DateTime
FrozenTime::setDefaultLocale('en-GB'); // For any immutable DateTime
Date::setDefaultLocale('en-GB'); // For any mutable Date
FrozenDate::setDefaultLocale('en-GB'); // For any immutable Date
Как мне изменить формат? Я ничего не могу найти в документации или в Интернете.
1 ответ
Вы не можете его изменить, по крайней мере, нет надежного, кроссбраузерного / совместимого с устройством способа, элемент управления отображается браузером, и текущее положение вещей таково, что браузеры используют локаль, в которой в настоящее время работает браузер, для форматирования элемента управления.
Если вам нужно что-то надежное, вам придется использовать собственный JavaScript datepicker. Если вы хотите идти на грани, обратите внимание на веб-компоненты.
См. Также Есть ли способ изменить формат input type="date"?.