XXII. Date/Time 日期/时间函数

简介

可以用这些函数得到 PHP 所运行的服务器的日期和时间。可以用这些函数将日期和时间以很多不同方式格式化输出。

注: 请留意这些函数依赖于服务器的地区设置。确认在使用这些函数时考虑到了夏令时的设置(例如使用 $date = strtotime('+7 days', $date) 而不是 $date += 7*24*60*60)和闰年。

需求

要编译本扩展模块不需要外部库文件。

安装

本函数库作为 PHP 内核的一部分,不用安装就能使用。

运行时配置

本扩展模块在 php.ini 中未定义任何配置选项。

运行时配置

这些函数的行为受 php.ini 的影响。

表格 1. 日期/时间配置选项

名称默认值可修改范围更新记录
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.83"PHP_INI_ALL自 PHP 5.0.0 起可用
date.sunset_zenith"90.83"PHP_INI_ALL自 PHP 5.0.0 起可用
date.timezone""PHP_INI_ALL自 PHP 5.0.0 起可用
有关 PHP_INI_* 常量进一步的细节与定义参见附录 G

以下是配置选项的简要解释。

date.default_latitude float

默认纬度。

date.default_longitude float

默认经度。

date.sunrise_zenith float

默认日出天顶。

date.sunset_zenith float

默认日落天顶。

date.timezone string

在未设定 TZ 环境变量时用于所有日期/时间函数的默认时区。优先顺序在 date_default_timezone_get() 页面中有说明。

注: 前四个配置选项目前仅用于 date_sunrise()date_sunset()

资源类型

本扩展模块未定义任何资源类型。

预定义常量

自 PHP 5.1.0 起定义有以下常量来提供标准日期表达方法,可以用于日期格式函数(例如 date())。

DATE_ATOMstring

原子钟格式(如:2005-08-15T15:52:01+0000)

DATE_COOKIEstring

HTTP Cookies 格式(如:Mon, 15 Aug 2005 15:52:01 UTC)

DATE_ISO8601string

ISO-8601(如:2005-08-15T15:52:01+0000)

DATE_RFC822string

RFC 822(如:Mon, 15 Aug 2005 15:52:01 UTC)

DATE_RFC850string

RFC 850(如:Monday, 15-Aug-05 15:52:01 UTC)

DATE_RFC1036string

RFC 1036(如:Monday, 15-Aug-05 15:52:01 UTC)

DATE_RFC1123string

RFC 1123(如:Mon, 15 Aug 2005 15:52:01 UTC)

DATE_RFC2822string

RFC 2822(如:Mon, 15 Aug 2005 15:52:01 +0000)

DATE_RSSstring

RSS(如:Mon, 15 Aug 2005 15:52:01 UTC)

DATE_W3Cstring

World Wide Web Consortium(如:2005-08-15T15:52:01+0000)

目录
checkdate -- 验证一个格里高里日期
date_default_timezone_get -- 取得一个脚本中所有日期时间函数所使用的默认时区
date_default_timezone_set -- 设定用于一个脚本中所有日期时间函数的默认时区
date_sunrise -- 返回给定的日期与地点的日出时间
date_sunset -- 返回给定的日期与地点的日落时间
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 时间戳