date函数的PHP
在php中,date的应用也很广泛。date()函数返回将整数 timestamp 按照给定的格式字串而产生的字符串。如果没有给出时间戳则使用本地当前时间。换句话说timestamp是可选的,而它的默认值为time()。
stringdate( string format [, int timestamp] )
有效的时间戳典型范围是格林威治时间1901 年 12 月 13 日 20:45:54 到 2038 年 1 月 19 日 03:14:07。(此范围符合 32 位有符号整数的最小值和最大值)。不过在 PHP 5.1 之前此范围在某些系统(如 Windows)中限制为从 1970 年 1 月 1 日到 2038 年 1 月 19 日。
PHP date() 函数技术细节 返回值:如果成功则返回格式化的日期字符串,如果失败则报 E_WARNING 错并返回 FALSE。PHP 版本:4+更新日志:PHP 5.1.0:新增 E_STRICT 和 E_NOTICE 时区错误。有效范围的时间戳是从 1901 年 12 月 13 日 20:45:54 GMT 星期五 到 2038 年 1 月 19 日 03:14:07 GMT 星期二。5.1.0 之前的版本,在某些系统上(例如 Windows)时间戳被限制在从 01-01-1970 到 19-01-2038。 PHP 5.1.1:新增标准日期/时间格式常量,用于指定 format 参数。格式字串可以识别以下 format参数的字符串 format字符 说明 返回值例子 日 --- --- d 月份中的第几天,有前导零的 2 位数字 01到 31 D 星期中的第几天,文本表示,3 个字母 Mon到 Sun j 月份中的第几天,没有前导零 1到 31 l(“L”的小写字母) 星期几,完整的文本格式 Sunday到 Saturday N ISO-8601 格式数字表示的星期中的第几天(PHP 5.1.0 新加) 1(表示星期一)到 7(表示星期天) S 每月天数后面的英文后缀,2 个字符 st,nd,rd或者 th。可以和 j一起用 w 星期中的第几天,数字表示 0(表示星期天)到 6(表示星期六) z 年份中的第几天 0到 366 星期 --- --- W ISO-8601 格式年份中的第几周,每周从星期一开始(PHP 4.1.0 新加的) 例如:42(当年的第 42 周) 月 --- --- F 月份,完整的文本格式,例如 January 或者 March January到 December m 数字表示的月份,有前导零 01到 12 M 三个字母缩写表示的月份 Jan到 Dec n 数字表示的月份,没有前导零 1到 12 t 给定月份所应有的天数 28到 31 年 --- --- L 是否为闰年 如果是闰年为 1,否则为 0 o ISO-8601 格式年份数字。这和 Y的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年。(PHP 5.1.0 新加) Examples: 1999or 2003 Y 4 位数字完整表示的年份 例如:1999或 2003 y 2 位数字表示的年份 例如:99或 03 时间 --- --- a 小写的上午和下午值 am或 pm A 大写的上午和下午值 AM或 PM B Swatch Internet 标准时 000到 999 g 小时,12 小时格式,没有前导零 1到 12 G 小时,24 小时格式,没有前导零 0到 23 h 小时,12 小时格式,有前导零 01到 12 H 小时,24 小时格式,有前导零 00到 23 i 有前导零的分钟数 00到 59> s 秒数,有前导零 00到 59> 时区 --- --- e 时区标识(PHP 5.1.0 新加) 例如:UTC,GMT,Atlantic/Azores I 是否为夏令时 如果是夏令时为 1,否则为 0 O 与格林威治时间相差的小时数 例如:+0200 T 本机所在的时区 例如:EST,MDT Z 时差偏移量的秒数。 -43200到 43200 完整的日期/时间 --- --- c ISO 8601 格式的日期(PHP 5 新加) 2004-02-12T15:19:21+00:00 r RFC 822 格式的日期 例如:Thu, 21 Dec 2000 16:01:07 +0200 U 从 Unix 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数 参见time() 格式字串中不能被识别的字符将原样显示。Z格式在使用gmdate()时总是返回 0。
例子 1.date()例子 <?php
// 设定要用的默认时区。自 PHP 5.1 可用
date_default_timezone_set('UTC');
// 输出类似:Monday
echo date(l);
// 输出类似:Monday 15th of August 2005 03:12:46 PM
echo date('l dS \of F Y h:i:s A');
// 输出:July 1, 2000 is on a Saturday
echo July 1, 2000 is on a . date(l, mktime(0, 0, 0, 7, 1, 2000));
/* 在格式参数中使用常量 */
// 输出类似:Mon, 15 Aug 2005 15:12:46 UTC
echo date(DATE_RFC822);
// 输出类似:2000-07-01T00:00:00+0000
echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000));
?> 例子 2. 在date()中转义字符