我想设置CakePHP的默认日期(时间),这样我就可以在我的视图中创建一个日期控件/日期选择器,它会自动显示所需的格式'dd-MM-yyyy'。
不知何故显示的格式是'yyyy-MM-dd'。
在我的视图文件中,我通过以下方式创建了日期控件/日期选择器:
echo $this->Form->input('startdate', ['type' => 'date', 'label' => 'Van', 'monthNames' => false, 'dateFormat' => 'dd-MM-yyyy', 'minYear' => '2017']);
我在config / app.php&中配置了defaultLocale。配置/ app.default.php。
//
'defaultLocale' => env('APP_DEFAULT_LOCALE', 'nl_NL'),
//
在config / bootstrap.php中我设置了defaultLocale。
ini_set('intl.default_locale', Configure::read('App.defaultLocale'));
除此之外,我在config / bootstrap.php中设置了时区。
date_default_timezone_set('Europe/Amsterdam');
在同一文件中启用默认语言环境格式解析也没有任何效果。
Type::build('time')
->useImmutable();
Type::build('date')
->useLocaleParser()
->setLocaleFormat('dd-MM-yyyy');
Type::build('datetime')
->useLocaleParser()
->setLocaleFormat('dd-MM-yyyy');
在运行时都没有改变它:
Time::setDefaultLocale('nl-NL'); // For any mutable DateTime
FrozenTime::setDefaultLocale('nl-NL'); // For any immutable DateTime
Date::setDefaultLocale('nl-NL'); // For any mutable Date
FrozenDate::setDefaultLocale('nl-NL'); // For any immutable Date
Time::setToStringFormat('dd-MM-yyyy HH:mm:ss');
FrozenTime::setToStringFormat('dd-MM-yyyy');
Date::setToStringFormat('dd-MM-yyyy');
FrozenDate::setToStringFormat('dd-MM-yyyy');