LoginSignup
3

More than 5 years have passed since last update.

CakePHP3 日付のフォーマットで平成表示

Last updated at Posted at 2017-12-16
$t = new \Cake\I18n\Time('2017-12-25 19:13');
echo $t->i18nFormat('平成y年MM月dd日(E) ah時m分', 'Asia/Tokyo', 'ja@calendar=japanese');
// 平成29年12月25日(月) 午後7時13分

次の元号どうすんだろ :sweat:

追記

平成

$t = new \Cake\I18n\Time('1989-1-8');
echo $t->i18nFormat('平成y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 平成1年01月08日(日)

昭和

$t = new \Cake\I18n\Time('1989-1-7');
echo $t->i18nFormat('昭和y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 昭和64年01月07日(土)

$t = new \Cake\I18n\Time('1926-12-25');
echo $t->i18nFormat('昭和y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 昭和1年12月25日(土)

大正

$t = new \Cake\I18n\Time('1926-12-24');
echo $t->i18nFormat('大正y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 大正15年12月24日(金)

$t = new \Cake\I18n\Time('1912-7-30');
echo  $t->i18nFormat('大正y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 大正1年07月30日(火)

明治

1868/9/7 以前は不正確になる...

$t = new \Cake\I18n\Time('1912-7-29');
echo $t->i18nFormat('明治y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 明治45年07月29日(月)

$t = new \Cake\I18n\Time('1868-9-8');
echo $t->i18nFormat('明治y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 明治1年09月08日(火)

$t = new \Cake\I18n\Time('1868-9-7');
echo $t->i18nFormat('明治y年MM月dd日(E)', 'Asia/Tokyo', 'ja@calendar=japanese');
// 明治4年09月07日(月)

参考

環境

  • CakePHP: 3.5.7
  • PHP: 7.1.10 by php-osx.liip.ch
  • intl: 1.1.0
  • ICU version: 58.1
  • ICU Data version: 58.1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3