DT

オブジェクトの生成方法

Author : trashtoy

Table of Contents

時間オブジェクトの生成方法には, 主に以下の種類があります. それぞれについて簡単に説明します.

コンストラクタから

時間オブジェクトの最も基本的な生成方法は, コンストラクタを使用したものです. 以下に例を示します.

  1. $d1 = new Peach_DT_Date(2012, 5, 21);                 
  2. $d2 = new Peach_DT_Datetime(2012, 5, 21, 7, 30);      
  3. $d3 = new Peach_DT_Timestamp(2012, 5, 21, 7, 30, 45);
  4. echo $d1; // 2012-05-21
  5. echo $d2; // 2012-05-21 07:30
  6. echo $d3; // 2012-05-21 07:30:45

クラスメソッド now

Peach_DT_Date, Peach_DT_Datetime, Peach_DT_Timestamp はそれぞれ now() というクラスメソッドを持っています. 現在時刻を取得するには now() メソッドを使ってください.

  1. $d1 = Peach_DT_Date::now();

クラスメソッド parse

Peach_DT_Date, Peach_DT_Datetime, Peach_DT_Timestamp それぞれに定義されている parse() というクラスメソッドを使うことで, 文字列を時間オブジェクトに変換することができます.

  1. $d1 = Peach_DT_Date::parse("2012-05-21");
  2. $d2 = Peach_DT_Datetime::parse("2012-05-21 07:30");
  3. $d3 = Peach_DT_Timestamp::parse("2012-05-21 07:30:45");
  4.  
  5. // フォーマットを指定する場合
  6. $f  = new Peach_DT_SimpleFormat("Ymd_His");
  7. $d1 = Peach_DT_Date::parse("20120521_073045", $f);
  8. $d2 = Peach_DT_Datetime::parse("20120521_073045", $f);
  9. $d3 = Peach_DT_Timestamp::parse("20120521_073045", $f);
  10. echo $d1; // "2012-05-21"
  11. echo $d2; // "2012-05-21 07:30"
  12. echo $d3; // "2012-05-21 07:30:45"

キャスト用メソッド

各種キャスト用メソッド (toDate, toDatetime, toTimestamp) を使い, とある時間オブジェクトを別の型に変換することができます.

  1. $d1 = new Peach_DT_Date(2012, 5, 21);
  2. $d2 = $d1->toDatetime();
  3. $d3 = $d1->toTimestamp();
  4. echo $d1; // "2012-05-21"
  5. echo $d2; // "2012-05-21 00:00"
  6. echo $d3; // "2012-05-21 00:00:00"