問題 × 解決策

PHPで西暦を和暦に変換する記述例

  • 2020年05月17日
  • PHP

問題

PHPで西暦を和暦に変換するには?

解決策

データフォーマットを「Ymd」に変換後、値に応じて各和暦用の処理を行う。

 

西暦を和暦に変換

PHPで西暦を和暦に変換する記述例をご紹介します。
今回は元のデータフォーマットを「Ymd」としての記述例です。

データフォーマットを「Ymd」にしておく。

データフォーマットを「Ymd」にしておきます。

$date -> format('Ymd');

年、月、日それぞれの値を変数に格納しておく。

年、月、日それぞれの値を変数に格納しておきます。

$y = substr( $date, 0, 4 );
$m = substr( $date, 4, 2 );
$d = substr( $date, 6, 2 );

値に応じて、いずれかの元号を付与して返す。

年、月、日それぞれの値を変数に格納しておきます。

if ( $date >= 20190501 ) {
    $wname = "令和";
    $y -= 2018;
} elseif ( $date >= 19890108 ) {
    $wname = "平成";
    $y -= 1988;
} elseif ( $date >= 19261225 ) {
    $wname = "昭和";
    $y -= 1925;
} elseif ( $date >= 19120730 ) {
    $wname = "大正";
    $y -= 1911;
} elseif ( $date >= 18680125 ) {
    $wname = "明治";
    $y -= 1867;
}
$date = $wname.(string)$y."年".(string)$m."月".(string)$d."日";
return $date;

参照

以下のサイトが、より詳しく解説してくれています。

【西暦和暦変換】
https://php-fan.org/seirekitowareki.html

コメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

five × five =

「問題 × 解決策」
月別アーカイブ一覧

「問題 × 解決策」
月別アーカイブ一覧