PHP - 日期和时间

日期是日常生活的重要组成部分,无需思考即可轻松与他们合作. PHP还提供了强大的日期算术工具,可以轻松操作日期.

获取带时间的时间戳()

PHP的时间( )功能为您提供有关当前日期和时间的所有信息.它不需要参数但返回一个整数.

time()返回的整数表示自格林威治标准时间1970年1月1日午夜起经过的秒数.此时刻称为UNIX纪元,从那以后已经过的秒数被称为时间戳.

<?php
   print time();
?>

这将产生以下结果 :

1480930103

这是很难理解的.但是PHP提供了很好的工具,可以将时间戳转换为人们熟悉的形式.

使用getdate转换时间戳()

function getdate()可选择接受时间戳并返回包含有关日期信息的关联数组.如果省略时间戳,它将与time()返回的当前时间戳一起使用.

下表列出了getdate()返回的数组中包含的元素.

Sr.NoKey&说明示例
1

seconds

分钟后的秒数(0-59)

20
2

minutes

过去一小时的分钟数(0  -  59)

29
3

hours

一天中的小时数(0  -  23)

22
4

mday

每月的某一天(1  -  31)

11
5

wday

星期几(0  -  6)

4
6

mon

一年中的一个月(1  -  12)

7
7

year

年(4位数)

1997
8

yday

一年中的某一天(0  -  365)

19
9

weekday

星期几

星期四
10

month

月年度

1月
11

0

时间戳

948370048

现在您可以完全控制日期和时间.你可以用你想要的任何格式格式化这个日期和时间.

示例

试试下面的例子

<?php
   $date_array = getdate();
   
   foreach ( $date_array as $key => $val ){
      print "$key = $val<br />";
   }
	
   $formated_date  = "Today's date: ";
   $formated_date .= $date_array['mday'] . "/";
   $formated_date .= $date_array['mon'] . "/";
   $formated_date .= $date_array['year'];
   
   print $formated_date;
?>

这将产生以下结果 :

seconds = 10
minutes = 29
hours = 9
mday = 5
wday = 1
mon = 12
year = 2016
yday = 339
weekday = Monday
month = December
0 = 1480930150
Today's date: 5/12/2016

转换带有日期的时间戳()

date()函数返回表示日期的格式化字符串.您可以对date()返回的格式进行大量控制,并使用必须传递给它的字符串参数.

date(format,timestamp)

如果省略,则date()可选择接受时间戳,然后使用当前日期和时间.传递给date()的格式字符串中包含的任何其他数据都将包含在返回值中.

下表列出了格式字符串可以包含的代码和减号;

Sr.No格式&说明示例
1

a

'am'或'pm'小写

pm
2

A

'AM'或'PM'大写

PM
3

d

日期,前导零的数字

20
4

D

星期几(三个字母)

星期四
5

F

月份名称

1月
6

h

小时(12小时格式 - 前导零)

12
7

H

小时(24小时格式 - 前导零)

22
8

g

小时(12小时格式 - 无前导零)

12
9

G

小时(24小时格式 - 无前导零)

22
10

分钟(0  -  59)

23
11

j

每月的某一天(没有前导零

20
12

l(Lower 'L' )

星期几

星期四
13

L

闰年('1'表示是,'0 'for no)

1
14

m

一年中的数字(数字 - 前导零)

1
15

M

一年中的一个月(三个字母)

Jan
16

r

RFC 2822格式化日期

星期四,2000年12月21日16:01:07 +0200
17

n

一年中的数字(数字 - 无前导零)

2
18

s

小时秒

20
19

U

时间戳

948372444
20

y

年(两位数)

06
21

Y

年(四位数)

2006
22

z

一年中的某一天(0  -  365)

206
23

Z

GMT的偏差(以秒为单位)

+ 5

示例

试试以下示例

<?php
   print date("m/d/y G.i:s<br>", time());
   print "Today is ";
   print date("j of F Y, \a\\t g.i a", time());
?>

这将产生以下结果 :

12/05/16 9.29:47Today is 5 2016f December 2016, at 9.29 am

希望您对如何根据您的要求格式化日期和时间有很好的理解.有关所有日期和时间函数的完整列表,请参阅 PHP Date&时间功能.