Overview

Namespaces

  • Peach
    • DF
    • DT
    • Http
      • Body
      • Header
    • Markup
    • Util

Classes

  • AbstractTime
  • Clock
  • Date
  • Datetime
  • DefaultClock
  • FixedClock
  • FormatWrapper
  • HttpDateFormat
  • OffsetClock
  • ShiftFormat
  • SimpleFormat
  • TimeEquator
  • Timestamp
  • TimeWrapper
  • UnixTimeFormat
  • Util
  • W3cDatetimeFormat

Interfaces

  • Format
  • Time
  • Overview
  • Namespace
  • Class

Class HttpDateFormat

HTTP-Date の書式を扱うクラスです. parse 系メソッドは, 以下の 3 種類のフォーマットを解釈することが出来ます.

"Fri, 13 Feb 2009 23:31:30 GMT"   #RFC 822, updated by RFC 1123
"Friday, 13-Feb-09 23:31:30 GMT"  #RFC 850, obsoleted by RFC 1036
"Fri Feb 13 23:31:30 2009"        #ANSI C's asctime() format

format 系メソッドは, 一番上の RFC 1123 形式のフォーマットで文字列を生成します.

このクラスは parse および format を行う際に, 内部時刻と GMT の自動変換を行います.

参考文献: モジュール版PHPで「If-Modified-Since」に対応する

Peach\DT\HttpDateFormat implements Peach\DT\Format
Namespace: Peach\DT
Located at Peach/DT/HttpDateFormat.php
Methods summary
public
# __construct( integer $offset = null )

新しいフォーマットを生成します. 引数 $offset を指定した場合, parse または format を行った際に, 指定された時差の量だけ時刻に補正がかかります. もしも時差に応じた自動変換が必要ない場合は $offset に 0 を指定してください.

新しいフォーマットを生成します. 引数 $offset を指定した場合, parse または format を行った際に, 指定された時差の量だけ時刻に補正がかかります. もしも時差に応じた自動変換が必要ない場合は $offset に 0 を指定してください.

引数を省略した場合は, システム時刻の時差 (Util::getTimeZoneOffset() の返り値と等価) を使用します. 特に必要がなければ引数なしのコンストラクタを使う代わりに HttpDateFormat::getInstance() を使ってください.

Parameters

$offset
時間オブジェクトの時差 (単位は分, 省略した場合はシステム設定の値を使用)
public static Peach\DT\HttpDateFormat
# getInstance( boolean $clearCache = false )

デフォルトのインスタンスを返します. このメソッドは引数なしでコンストラクタを呼び出した場合と同じ結果を返しますが, 返り値がキャッシュされるため, 複数の場所で同じインスタンスを使いまわすことができます.

デフォルトのインスタンスを返します. このメソッドは引数なしでコンストラクタを呼び出した場合と同じ結果を返しますが, 返り値がキャッシュされるため, 複数の場所で同じインスタンスを使いまわすことができます.

システムのタイムゾーン設定を動的に変更した場合は, 変更前のキャッシュを破棄する必要があるため, 引数 $clearCache に TRUE を指定して実行してください.

Parameters

$clearCache
キャッシュを破棄してインスタンスを再生成する場合は TRUE

Returns

Peach\DT\HttpDateFormat
デフォルトのインスタンス
public Peach\DT\Date
# parseDate( string $format )

HttpDateFormat::parseTimestamp() の実行結果を Date にキャストします.

HttpDateFormat::parseTimestamp() の実行結果を Date にキャストします.

Parameters

$format
HTTP-date 形式の文字列

Returns

Peach\DT\Date
変換結果

Throws

InvalidArgumentException
フォーマットが不正な場合

Implementation of

Peach\DT\Format::parseDate()
public Peach\DT\Datetime
# parseDatetime( string $format )

HttpDateFormat::parseTimestamp() の実行結果を Datetime にキャストします.

HttpDateFormat::parseTimestamp() の実行結果を Datetime にキャストします.

Parameters

$format
HTTP-date 形式の文字列

Returns

Peach\DT\Datetime
変換結果

Throws

InvalidArgumentException
フォーマットが不正な場合

Implementation of

Peach\DT\Format::parseDatetime()
public Peach\DT\Timestamp
# parseTimestamp( string $format )

HTTP-date 形式のフォーマットを Timestamp に変換します.

HTTP-date 形式のフォーマットを Timestamp に変換します.

Parameters

$format
HTTP-date 形式の文字列

Returns

Peach\DT\Timestamp
変換結果

Throws

InvalidArgumentException
フォーマットが不正な場合

Implementation of

Peach\DT\Format::parseTimestamp()
public string
# formatDate( Peach\DT\Date $d )

この日付の 00:00 の時刻を GMT に変換した結果を Http-date にして返します. 例えばシステム時刻の時差が UTC+9 だった場合, 前日の 15:00 の HTTP-date 表現を返り値とします.

この日付の 00:00 の時刻を GMT に変換した結果を Http-date にして返します. 例えばシステム時刻の時差が UTC+9 だった場合, 前日の 15:00 の HTTP-date 表現を返り値とします.

Parameters

$d
書式化対象の時間オブジェクト

Returns

string
この日付の HTTP-date 表現

Implementation of

Peach\DT\Format::formatDate()
public string
# formatDatetime( Peach\DT\Datetime $d )

この時刻の HTTP-date 表現を返します.

この時刻の HTTP-date 表現を返します.

Parameters

$d
書式化対象の時間オブジェクト

Returns

string
この時刻の HTTP-date 表現

Implementation of

Peach\DT\Format::formatDatetime()
public string
# formatTimestamp( Peach\DT\Timestamp $d )

この時刻の HTTP-date 表現を返します.

この時刻の HTTP-date 表現を返します.

Parameters

$d
書式化対象の時間オブジェクト

Returns

string
この時刻の HTTP-date 表現

Implementation of

Peach\DT\Format::formatTimestamp()
PEACH2 API documentation generated by ApiGen