PHP 日期与时间

PHP 日期与时间

日期是日常生活中的一部分,因此在不加思考的情况下与它们一起工作变得容易。PHP还提供了强大的日期算术工具,使操作日期变得简单轻松。

使用time()函数获取时间戳

PHP的 time() 函数为您提供了有关当前日期和时间的所有信息。它不需要任何参数,但返回一个整数。

time()函数返回的整数表示自1970年1月1日午夜格林尼治时间以来经过的秒数。这一刻被称为UNIX纪元,自那时以来经过的秒数被称为时间戳。

<?php
   print time();
?>

这将产生以下结果 −

1480930103

这是一件难以理解的事情。但是PHP提供了出色的工具,可以将时间戳转换为人类习惯的格式。

使用getdate()函数转换时间戳

函数 getdate() 可选地接受一个时间戳,并返回一个包含有关日期信息的关联数组。如果省略时间戳,它将使用由time()返回的当前时间戳。

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

序号 键名 & 描述 示例
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 星期几 Thursday
10 month 一年中的月份 January
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'];

   printformated_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()返回的格式进行极大的控制。

date(format,timestamp)

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

以下表格列出了格式字符串可以包含的代码:

序号 格式与描述 示例
1 a 小写的’am’或’pm’ pm
2 A 大写的’AM’或’PM’ PM
3 d 月份中的日期,带有前导零的数字 20
4 D 星期几的英文缩写(三个字母) Thu
5 F 月份名称 January
6 h 小时(12小时制 – 前导零) 12
7 H 时间(24小时制 – 前导零) 22
8 g 时间(12小时制 – 没有前导零) 12
9 G 时间(24小时制 – 没有前导零) 22
10 i 分钟(0 – 59) 23
11 j 日期(没有前导零) 20
12 l (小写’L’) 星期几 星期四
13 L 闰年(’1’代表是,’0’代表否) 1
14 m 年月份(数值-前导零) 1
15 M 年月份(三个字母) 一月
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 与格林威治时间相差的秒数 +5

示例

尝试以下示例

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

这将产生以下结果−

12/05/16 9:29:47
Today is 5 2016f December 2016 at 9:29 am

希望您对如何根据您的要求进行日期和时间格式化有了很好的理解。供您参考,以下是所有日期和时间函数的完整列表:PHP 日期和时间函数。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程