Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * 和暦の2桁数値と月日しかわからないデータから西暦取りたい場合に使うスクリプト。
- * 与えられた日付データが、今の年号か次の元号か判別したいときにだけ使えるよ
- *
- * たとえば「310102」は2019年だよ
- * 「010502」は2019年だよ
- */
- date_default_timezone_set('Asia/Tokyo');
- // 標準入力
- $stdin = trim(fgets(STDIN));
- $wareki = array();
- $wareki["shin"] = array(18, 2000, new DateTime("2019-05-01 00:00:00"));
- $wareki["heisei"] = array(-12, 2000, new DateTime("1989-01-08 00:00:00"));
- $prefixNumber = substr($stdin, 0, 2);
- $now = new DateTime('now');
- foreach ($wareki as $val) {
- $d = ($prefixNumber + $val[0] + $val[1]);
- $d .= substr($stdin, 2, 4);
- $a = new DateTime($d + "00:00:00");
- if ($a >= $val[2] && $now->format("Y") >= $a->format("Y")) {
- print($a->format("Y"));
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement