[PHP-users 20808]Re: 西暦←→和暦 変換の方法について

rimk @ sky.sannet.ne.jp rimk @ sky.sannet.ne.jp
2004年 3月 15日 (月) 16:35:05 JST


こんにちは。田中です。

私もサンプルコードを書いてみました。
PHPユーザーさんとかぶってしまいましたね。
もったいないので、投稿させて頂きます。

こちらは、ereg() で書いてみました。

<?

  echo seireki2wareki( "2004" ). "<BR>\n";
  echo wareki2seireki( "H16" ). "<BR>\n";

  function seireki2wareki( $seireki ){
    $WAREKI  = array("平成"=>1989, "昭和"=>1926, "大正"=>1912);
    if( !ereg("^[0-9]{4}$",trim($seireki)) ) return FALSE;
    foreach( $WAREKI as $nengo => $gannen ){
      $year = $seireki - $gannen + 1;
      if( $year == 1 ) $year = "元";
      if( $seireki >= $gannen ) return "{$nengo}{$year}年";
    }
    return FALSE;
  }

  function wareki2seireki( $wareki ){
    $WAREKI = array("T" => 1912, "S" => 1926, "H" => 1989);
    if( !ereg("^([TSH])([0-9]+)$", trim($wareki), $y) || $y[2] <= 0 ) return  FALSE;
    return $WAREKI[$y[1]]+$y[2]-1;
  }

?>


PHP-users メーリングリストの案内