日付変換(西暦、和暦、年齢等)

このエントリーをはてなブックマークに追加

Laravel5で日付変換の為の自作クラスを作成してみたいと思います。appフォルダの直下に作成しました。

私が頻繁に使用しているクラスで、Laravel5用に作成し直しました。元号を西暦に変換したり、西暦を元号に変換、また、年齢を計算したりするのに使用しています。

app/Convert.php

  • 1行目:Laravel5からは、名前空間の指定が必須になりました。
  • 2行目:use演算子でExceptionクラスをインポートします。Laravel5からはuse演算子を多用しますので、テキストエディタでの入力は面倒になります。できれば、EclipseやNetBeans等の、補完機能を使った方が便利です。※NetBeansでは、use Excepiton;と入力するとuse SebastianBergmann\Exporter\Exception;に変換してくれます。

date($date=null,$mark=null)

  • 第1引数を西暦に変換するメソッド
  • 第1引数は、昭和50年1月1日、H.50.1.1、H50-1-1、形式に対応
  • 第2引数は、西暦の表示方法。省略すれば、2014-12-25形式で表示、1を指定すれば、2014/12/25形式で表示し、2を指定すれば、2014年12月25日形式で表示。

gengo($date=null,$mark=null)

  • 第1引数を元号に変換するメソッド
  • 2010/12/25、2010-12-25、または、2010年12月25日形式の第1引数を平成22年12月25日に変換
  • 第2引数は、元号の表示方法。第2引数を省略すれば、平成22年12月25日形式で表示、1を指定したら、H.22/12/25形式で表示し、それ以外を指定すれば、H.22.12.25形式で表示します。

age($date)

  • 第1引数を年齢に変換するメソッド
  • 引数は1980-10-10、1980/10/10、及び昭和50年11月2日形式にも対応
  • このメソッドでは、38歳のように”歳”の文字まで表示するように作成していますが、数字だけがほしい場合などは、第2引数を作成して、その引数に応じて、数字に変換するか、文字に変換するかを決めるのも一つ方法だと思います。

week($date=null)

  • 第1引数を曜日に変換するメソッド

weekdate($date=null,$mark=null)

  • 第1引数を曜日付きの日付に変換するメソッド

このConvertクラスをHomeController内で使用してみます。

app/Http/Controllers/Homecontroller.php

  • 1行目:名前空間の指定は必須です。
  • 3行目:コントローラを使用するには、これも必須です。
  • 4行目:Convertクラスを使用するので、use App\Convert;も必須です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">