PHPの和暦→西暦

ini_set('display_errors', "On");

function seireki($wareki_year){

	$wareki_year = str_replace("元年", "1年", mb_convert_kana($wareki_year, "n"));

	if(preg_match('!^(明治|大正|昭和|平成|令和)([0-9]+)年$!', $wareki_year, $matches)){

		$era_name = $matches[1];
		$year = intval($matches[2]);

		if($era_name === "明治"){
			$year += 1867;
		} else if($era_name === "大正"){
			$year += 1911;
		} else if($era_name === "昭和"){
			$year += 1925;
		} else if($era_name === "平成"){
			$year += 1988;
		} else if($era_name === "令和"){
			$year += 2018;
		}

		return $year . "年";
	}
	return null;
}
echo seireki("平成元年");

$ php index.php
1989年

preg_matchで元号と年を分割する訳ね。なるほど、ロジックはわかった。