勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPにて西暦から干支(十二支)を計算し表示する方法

  PHP

先日MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法をメモしたが、PHPでも同じようなことをしたい。以下に対応方法をメモ。

 

対応方法

ソースコード

<?php
$eto_list = array(
    '子(ねずみ)',
    '丑(うし)',
    '寅(とら)',
    '卯(うさぎ)',
    '辰(たつ)',
    '巳(み)',
    '午(うま)',
    '未(ひつじ)',
    '申(さる)',
    '酉(とり)',
    '戌(いぬ)',
    '亥(い)',
);

for( $year = 2008; $year <= 2020; $year++ ){
    $eto = $eto_list[($year - 4) % 12];
    echo $year . "年 " . $eto . "\n";
}

出力結果

2008年 子(ねずみ)
2009年 丑(うし)
2010年 寅(とら)
2011年 卯(うさぎ)
2012年 辰(たつ)
2013年 巳(み)
2014年 午(うま)
2015年 未(ひつじ)
2016年 申(さる)
2017年 酉(とり)
2018年 戌(いぬ)
2019年 亥(い)
2020年 子(ねずみ)

 - PHP

  関連記事

CodeIgniter4でフォームからファイルをアップロードし保存する方法

CodeIgniter4.4.4でformから画像等のファイルをアップロードし、 ...

SortableJSを使ってデータの並べ替え&保存

あるシステムを拝見した際にtableタグ内に並んでいる項目をドラッグ&ド ...

PHPにて指定した期間内のランダムな日付をn件生成し、日付順にソートした上で受け取る方法

PHPにて指定した期間内のランダムな日付を指定した数だけ生成し、さらに日付順にソ ...

PHPにて指定した期間内の日付を1日ずつループで出力する方法

PHPにて開始日と終了日をユーザが入力すると、その期間内の日付をYYYY-MM- ...

PHPで改行を含むデータをCSV化する際に表示崩れを防ぐ方法

PHPで改行を含むデータをCSV化した場合、そのCSVファイルをエクセル等で開く ...