QuickAnswer
by

CakePHP3で取得したdateのフォーマットが年2桁。年4桁にデフォルトを変更する

CakePHP3で取得したdateのフォーマットが年2桁。年4桁にデフォルトを変更する

CakePHP3で、MySQLから取得したdateがなぜかYY-MM-DDの年2桁になってしまう。
phpMyAdminで確認すると年4桁で格納されていることがわかる。
MySQLのデフォルト設定を変更する必要があるのか?CakePHPの初期設定が不足しているのか。

この問題は特定の環境で発生するようで、必ずしも環境が古い場合に発生しているのでは無さそう。

解決方法

config/bootstrap.php に以下記述する。

Cake\I18n\Date::setToStringFormat('yyyy-MM-dd');
Cake\I18n\FrozenDate::setToStringFormat('yyyy-MM-dd');

なぜこの現象が発生するかは不明。

18-05-24 ---> 2018-05-24
正しく表示された。

CONTENTS