勉強したことのメモ

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

  関連記事

UTF-16にエンコードされている文字列をUTF-8へデコード
UTF-16にエンコードされている文字列をUTF-8へデコード

エンコードされている文字列であまり見かけない感じのものがあった。UTF-8やSh ...

PHPからCSVファイルを出力する際にメモリを節約する方法
PHPからCSVファイルを出力する際にメモリを節約する方法

MySQLよりデータを大量に取り出してCSVファイル化し、ダウンロードさせるとい ...

MySQLでランダムにデータを取得しつつページング機能も実装する方法
MySQLでランダムにデータを取得しつつページング機能も実装する方法

MySQLからデータを持ってくる際にランダムな表示を行ってほしいと言われた。ただ ...

PHPでプロキシ経由で他サーバーに接続する方法(file_get_contents / curlの2パターン)
PHPでプロキシ経由で他サーバーに接続する方法(file_get_contents / curlの2パターン)

PHPでfile_get_contentsやcurlで他サーバに接続する際に自サ ...

PHPのバリエーションライブラリ「Valitron」の導入及び利用方法
PHPのバリエーションライブラリ「Valitron」の導入及び利用方法

フォーム等の入力内容チェックをPHP側で行う際、現状は素のPHPで書いているけど ...