php学习笔记之日期时间函数

1391 2016-11-25 15:47

本文章来给各位朋友详细介绍关于在php学日期时间函数的一些用法与参数介绍,php支持的时间函数有很多,例如:getdate()、mktime()、gmdate()等等,下面我来给大家介绍有兴趣的朋友可以在网上搜索相关资料。

获取日期时间也是网站设计中经常用到的。php提供了date()时间函数来实现这一功能,结构形式如下:

实例:

 代码如下 复制代码

<?php             
 echo date("F j, Y, g:i a"). "&nbsp&nbsp&nbsp&nbsp&nbsp"; 
 echo date("m.d.y"). "&nbsp&nbsp&nbsp&nbsp&nbsp";  
 echo  date("j, n, Y"). "&nbsp&nbsp&nbsp&nbsp&nbsp";  
 echo  date("Ymd"). "&nbsp&nbsp&nbsp&nbsp&nbsp";    
 echo  date('h-i-s, j-m-y, it is w Day z '). "&nbsp&nbsp&nbsp&nbsp&nbsp";
 
 echo  date('it is the jS day.'). "&nbsp&nbsp&nbsp&nbsp&nbsp";
 
 echo  date("D M j G:i:s T Y"). "&nbsp&nbsp&nbsp&nbsp&nbsp"; 
 echo  date('H:m:s m is month'). "&nbsp&nbsp&nbsp&nbsp&nbsp"; 
 
 echo  date("H:i:s"). "&nbsp&nbsp&nbsp&nbsp&nbsp";   
 echo date('l dS of F Y h:i:s A');       
 echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000));   
?>

format参数及其含义
参数 含义 备注
a 上午或下午 am或pm
A 上午或下午 AM或PM
B 互联网时间 000~999
d 月份中的第几天 01~31
D 替换成星期几的英文简称 Mon~Sun
F 用英文表示月份 January~December
g 小时 1~12
G 小时 0~23
h 小时 01~12
H 小时 00~23
i 分钟 00~59
I 是否为夏令时 是为1,否为0
j 月份中的第几天 1~31
l 星期几 Sunday~Saturday
L 是否为闰年 闰年为1,不是闰年为0
m 用数字表示月份,按两位输出 01~12
M 月份缩写的英文单词 Jan~Dec
n 月份按阿拉伯数字格式输出 1~12
s 秒数 00~59
S 每月天数英文后缀 1st~2nd
t 指定月份的天数 28~31
T 本机设置的时区 如EST
w 一周的第几天(从0~6) 0~6
Y 替换成4位年号 如2011
y 替换成2位的年号 如11
z 一年中第几天 0~366
Z 以秒表示的时区偏差 -43200~43200

getdate()定义和用法

getdate() 函数取得日期/时间信息。

语法
getdate(timestamp)参数 描述
timestamp 可选。规定 Unix 时间格式中的时间。

说明
返回一个根据 timestamp 得出的包含有日期信息的结合数组。如果没有给出时间戳,则认为是当前本地时间。

数组中的单元如下:

 代码如下 复制代码

<?php
print_r(getdate());
?>输出:

Array
(
[seconds] => 45
[minutes] => 52
[hours] => 14
[mday] => 24
[wday] => 2
[mon] => 1
[year] => 2006
[yday] => 23
[weekday] => Tuesday
[month] => January
[0] => 1138110765
)

键名 说明 返回值例子
"seconds" 秒的数字表示 0 到 59
"minutes" 分钟的数字表示 0 到 59
"hours" 小时的数字表示 0 到 23
"mday" 月份中第几天的数字表示 1 到 31
"wday" 星期中第几天的数字表示 0(表示星期天)到 6(表示星期六)
"mon" 月份的数字表示 1 到 12
"year" 4 位数字表示的完整年份 例如:1999 或 2003
"yday" 一年中第几天的数字表示 0 到 365
"weekday" 星期几的完整文本表示 Sunday 到 Saturday
"month" 月份的完整文本表示 January 到 December
0 自从 Unix 纪元开始至今的秒数,和 time() 的返回值以及用于 date() 的值类似。 系统相关,典型值为从 -2147483648 到 2147483647。

mktime() 定义和用法

mktime() 函数返回一个日期的 Unix 时间戳。

参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。

参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。

语法
mktime(hour,minute,second,month,day,year,is_dst)

例子
mktime() 函数对于日期运算和验证非常有用。它可以自动校正越界的输入:

 代码如下 复制代码
<?php
echo(date("M-d-Y",mktime(0,0,0,12,36,2001)));
echo(date("M-d-Y",mktime(0,0,0,14,1,2001)));
echo(date("M-d-Y",mktime(0,0,0,1,1,2001)));
echo(date("M-d-Y",mktime(0,0,0,1,1,99)));
?>

输出:

Jan-05-2002
Feb-01-2002
Jan-01-2001
Jan-01-1999

参数 描述
hour 可选。规定小时。
minute 可选。规定分钟。
second 可选。规定秒。
month 可选。规定用数字表示的月。
day 可选。规定天。
year 可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 PHP 5 中已经不存在这个限制了。
is_dst

可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。

自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。