- PHP教程
- PHP-主页
- PHP - 简介
- PHP-环境设置
- PHP - 语法概述
- PHP - 变量类型
- PHP - 常量
- PHP - 运算符类型
- PHP - 决策
- PHP - 循环类型
- PHP-数组
- PHP-字符串
- PHP - 网络概念
- PHP - 获取和发布
- PHP - 文件包含
- PHP - 文件和 I/O
- PHP - 函数
- PHP-Cookie
- PHP-会话
- PHP - 发送电子邮件
- PHP-文件上传
- PHP - 编码标准
- 高级PHP
- PHP - 预定义变量
- PHP-正则表达式
- PHP - 错误处理
- PHP - 错误调试
- PHP - 日期和时间
- PHP 和 MySQL
- PHP 和 AJAX
- PHP 和 XML
- PHP——面向对象
- PHP - 面向 C 开发人员
- PHP - 适合 PERL 开发人员
- PHP 表单示例
- PHP-表单介绍
- PHP - 验证示例
- PHP - 完整表格
- PHP框架作品
- PHP-框架工程
- PHP - 核心 PHP 与 Frame Works
- PHP 设计模式
- PHP - 设计模式
- PHP 函数参考
- PHP - 内置函数
- PHP 有用资源
- PHP - 问题与解答
- PHP - 有用的资源
- PHP - 讨论
PHP - 日期和时间
日期是日常生活的一部分,因此不假思索地使用它们变得很容易。PHP 还提供了强大的日期算术工具,使操作日期变得容易。
使用 time() 获取时间戳
PHP 的time()函数为您提供有关当前日期和时间的所有信息。它不需要参数但返回一个整数。
time() 返回的整数表示自 1970 年 1 月 1 日格林威治标准时间午夜以来经过的秒数。这一时刻称为 UNIX 纪元,从那时起经过的秒数称为时间戳。
<?php print time(); ?>
这将产生以下结果 -
1480930103
这是一件很难理解的事情。但是 PHP 提供了出色的工具来将时间戳转换为人类熟悉的形式。
使用 getdate() 转换时间戳
函数getdate()可以选择接受时间戳并返回包含日期信息的关联数组。如果省略时间戳,它将使用 time() 返回的当前时间戳。
下表列出了 getdate() 返回的数组中包含的元素。
先生编号 | 按键及说明 | 例子 |
---|---|---|
1 | 秒 分钟过秒 (0-59) |
20 |
2 | 分钟 一小时过去的分钟 (0 - 59) |
29 |
3 | 小时 一天中的几个小时(0 - 23) |
22 |
4 | 当天 该月的第几天 (1 - 31) |
11 |
5 | 工作日 星期几 (0 - 6) |
4 |
6 | 周一 一年中的月份 (1 - 12) |
7 |
7 | 年 年份(4 位数字) |
1997年 |
8 | 日 一年中的某一天 (0 - 365) |
19 |
9 | 工作日 一周中的天 |
周四 |
10 | 月 一年中的月份 |
一月 |
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() 返回的格式进行大量控制,并带有必须传递给它的字符串参数。
date(format,timestamp)
date() 可选择接受时间戳,如果省略则将使用当前日期和时间。传递给 date() 的格式字符串中包含的任何其他数据都将包含在返回值中。
下表列出了格式字符串可以包含的代码 -
先生编号 | 格式及描述 | 例子 |
---|---|---|
1 | A “am”或“pm”小写 |
下午 |
2 | A “AM”或“PM”大写 |
下午 |
3 | d 月份中的某天,带有前导零的数字 |
20 |
4 | D 星期几(三个字母) |
星期四 |
5 | F 月份名称 |
一月 |
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(较低的“L”) 一周中的天 |
周四 |
13 | L 闰年(“1”表示是,“0”表示否) |
1 |
14 | 米 一年中的月份(数字 - 前导零) |
1 |
15 | 中号 一年中的月份(三个字母) |
扬 |
16 | r RFC 2822 格式化日期 |
2000 年 12 月 21 日星期四 16:01:07 +0200 |
17 号 | n 一年中的月份(数字 - 无前导零) |
2 |
18 | s 每小时的秒数 |
20 |
19 | U 时间戳 |
948372444 |
20 | y 年份(两位数) |
06 |
21 | 是 年份(四位数) |
2006年 |
22 | z 一年中的某一天(0 - 365) |
206 |
23 | Z 与 GMT 的偏移(以秒为单位) |
+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 日期和时间函数中给出了所有日期和时间函数的完整列表,供您参考。