Forum und email

日付・時刻関数

導入

以下の関数により、PHPスクリプトを実行するサーバから日付と時間を取 得することが可能となります。多くの異なる方法で日付や時間をフォー マットするためにこれらの関数を使用することができます。

注意: これらの関数は、使用するサーバのロケールの設定に依存していること に注意してください。これらの関数を使用する際にはサマータイム (例えば、.$date += 7*24*60*60ではなく、 $date = strtotime('+7 days', $date) とする) および閏年を必ず考慮に入れるようにしてください。

注意: この節で参照しているタイムゾーンは、 サポートされるタイムゾーンのリスト で見つけられます。

要件

外部ライブラリを必要としません。

インストール手順

PHP コアに含まれるため、 追加のインストール無しで使用できます。

注意: 最新バージョンのタイムゾーンデータベースは、PECL の » timezonedb からインストールできます。Windows ユーザ向けには、コンパイル済みの DLL » php_timezonedb.dll が PECL4Win サイトからダウンロードできます。

実行時設定

php.ini の設定により動作が変化します。

Date/Time Configuration Options
名前 デフォルト 変更の可否 変更履歴
date.default_latitude "31.7667" PHP_INI_ALL PHP 5.0.0 以降で利用可能
date.default_longitude "35.2333" PHP_INI_ALL PHP 5.0.0 以降で利用可能
date.sunrise_zenith "90.583333" PHP_INI_ALL PHP 5.0.0 以降で利用可能
date.sunset_zenith "90.583333" PHP_INI_ALL PHP 5.0.0 以降で利用可能
date.timezone "GMT" PHP_INI_ALL PHP 5.1.0 以降で利用可能
PHP_INI_* 定数の詳細および定義については php.ini ディレクティブ を参照してください。

以下に設定ディレクティブに関する 簡単な説明を示します。

date.default_latitude float

デフォルトの緯度

date.default_longitude float

デフォルトの経度

date.sunrise_zenith float

デフォルトの日出点

date.sunset_zenith float

デフォルトの日没点

date.timezone string

環境変数 TZ が設定されていない場合、 全ての日付/時刻関数で使用されるデフォルトのタイムゾーン。 優先順については、date_default_timezone_get() のページで解説されています。サポートしているタイムゾーンについては サポートされるタイムゾーンのリスト を参照ください。

注意: 最初の 4 つの設定オプションは現時点で date_sunrise()date_sunset() でのみ使用されます。

リソース型

リソース型は定義されていません。

定義済み定数

以下の定数は PHP 5.1.1 以降で定義されており、標準的な日付の書式を表します。 日付フォーマット関数(date() など)で使用します。

DATE_ATOM (string)
Atom (例: 2005-08-15T15:52:01+00:00)
DATE_COOKIE (string)
HTTP クッキー (例: Monday, 15-Aug-05 15:52:01 UTC)
DATE_ISO8601 (string)
ISO-8601 (例: 2005-08-15T15:52:01+0000)
DATE_RFC822 (string)
RFC 822 (例: Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC850 (string)
RFC 850 (例: Monday, 15-Aug-05 15:52:01 UTC)
DATE_RFC1036 (string)
RFC 1036 (例: Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC1123 (string)
RFC 1123 (例: Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC2822 (string)
RFC 2822 (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC3339 (string)
DATE_ATOM と同じ (PHP 5.1.3 以降)
DATE_RSS (string)
RSS (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_W3C (string)
World Wide Web コンソーシアム (例: 2005-08-15T15:52:01+00:00)

以下の定数は PHP 5.1.2 以降に存在し、関数 date_sunrise() および date_sunset() が返す結果の書式を指定します。

SUNFUNCS_RET_TIMESTAMP (integer)
タイムスタンプ
SUNFUNCS_RET_STRING (integer)
時:分 (例: 08:02)
SUNFUNCS_RET_DOUBLE (integer)
時刻を表す浮動小数点値 (例 8.75)

目次

  • checkdate — グレグリオ歴の日付/時刻の妥当性を確認します
  • date_create — 新しい DateTime オブジェクトを返す
  • date_date_set — 日付を設定する
  • date_default_timezone_get — スクリプト中の日付/時刻関数で使用されるデフォルトタイムゾーンを取得する
  • date_default_timezone_set — スクリプト中の日付/時刻関数で使用されるデフォルトタイムゾーンを設定する
  • date_format — 指定した書式でフォーマットした日付を返す
  • date_isodate_set — ISO 日付を設定する
  • date_modify — タイムスタンプを変更する
  • date_offset_get — 夏時間のオフセットを返す
  • date_parse — 指定した日付に関する詳細な情報を連想配列で返す
  • date_sun_info — 日の出/日の入り時刻と薄明かり (twilight) の開始/終了時刻の情報を含む配列を返す
  • date_sunrise — 指定した日付と場所についての日の出時刻を返す
  • date_sunset — 指定した日付と場所についての日の入り時刻を返す
  • date_time_set — 時刻を設定する
  • date_timezone_get — 指定した DateTime に関連するタイムゾーンを返す
  • date_timezone_set — DateTime オブジェクトのタイムゾーンを設定する
  • date — ローカルの日付/時刻を書式化する
  • getdate — 日付/時刻情報を取得する
  • gettimeofday — 現在の時間を得る
  • gmdate — GMT/UTC の日付/時刻を書式化する
  • gmmktime — GMT 日付から Unix タイムスタンプを取得する
  • gmstrftime — ロケールの設定に基づいて GMT/UTC 時刻/日付をフォーマットする
  • idate — ローカルな時刻/日付を整数として整形する
  • localtime — ローカルタイムを得る
  • microtime — 現在の Unix タイムスタンプをマイクロ秒まで返す
  • mktime — 日付を Unix のタイムスタンプとして取得する
  • strftime — ロケールの設定に基づいてローカルな日付・時間をフォーマットする
  • strptime — strftime が生成した日付/時刻をパースする
  • strtotime — 英文形式の日付を Unix タイムスタンプに変換する
  • time — 現在の Unix タイムスタンプを返す
  • timezone_abbreviations_list — 夏時間、オフセットおよびタイムゾーン名を含む連想配列を返す
  • timezone_identifiers_list — すべてのタイムゾーン識別子を含む配列を返す
  • timezone_name_from_abbr — 略称からタイムゾーン名を返す
  • timezone_name_get — タイムゾーンの名前を返す
  • timezone_offset_get — GMT からのタイムゾーンのオフセットを返す
  • timezone_open — 新しい DateTimeZone オブジェクトを返す
  • timezone_transitions_get — タイムゾーンの変遷を返す