PHP日期和时间函数指南:实现各种日期时间格式化操作
PHP日期和时间函数是管理日期和时间格式的基本函数,可以用于格式化制定的日期和时间信息,以便于数据处理和展示。在PHP中有许多日期和时间函数可用,包括日期格式化函数、日期比较函数、日期计算函数等。下面我将详细介绍PHP日期和时间函数的各种用法。
一、获取当前日期时间
获取当前日期时间可以使用函数:date()
语法:date([string $format][, int $timestamp])
$format参数: 指定返回日期时间的格式。常用的格式如下。
参数 | 说明
---|---
d | 月份中的日期(01-31)
D | 星期中的第几天(Mon-Sun)
m | 数字表示的月份(01-12)
M | 三个字母缩写表示的月份(Jan-Dec)
y | 带有前导零的年份(如:2019)
Y | 不带有前导零的完整的年份(如:19)
$timestamp参数: 可选参数。指定将日期格式化为什么时间戳。默认值为当前时间。
示例:
<?php
echo "Today is " . date("Y/m/d") . "<br>";
echo "Today is " . date("Y.m.d") . "<br>";
echo "Today is " . date("Y-m-d") . "<br>";
echo "Today is " . date("l");
?>
输出:
Today is 2019/09/05 Today is 2019.09.05 Today is 2019-09-05 Today is Thursday
二、获取当前时间戳
获取当前时间戳可以使用函数:time()
语法: time()
示例:
<?php echo time(); ?>
输出:
1567631518
三、将时间戳转换为日期时间格式
将时间戳转换为日期时间格式可以使用函数:date()
语法:date([string $format][, int $timestamp])
$format参数: 指定返回日期时间的格式。常用的格式如上。
$timestamp参数: 必选参数。指定将时间戳转换为什么日期时间格式。
示例:
<?php
$timestamp = 1566345485;
echo(date("Y-m-d H:i:s", $timestamp));
?>
输出:
2019-08-21 10:38:05
四、将日期时间格式转换为时间戳
将日期时间格式转换为时间戳可以使用函数:strtotime()
语法:strtotime(string $time)
$time参数: 必选参数。指定将日期时间格式转换为什么时间戳。
示例:
<?php $dateStr = "2009-06-29 08:30:00"; $timestamp = strtotime($dateStr); echo($timestamp); ?>
输出:
1246237800
五、计算日期与时间之间的差
计算日期与时间之间的差可以使用函数:strtotime()、date_create()、date_diff()
示例:
<?php
$datetime1 = date_create('2019-08-01');
$datetime2 = date_create('2019-09-05');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days');
?>
输出:
+35 days
六、其它常用的日期和时间函数
函数| 说明
---|---
mktime() | 返回一个日期的 UNIX 时间戳
date_create() | 返回一个新的 DateTime 对象
date_diff() | 返回两个 DateTime 对象之间的差异
strtotime() | 将任何英文文本的日期时间描述解析为 Unix 时间戳
strftime() | 根据本地设置格式化时间/日期
time() | 返回当前时间的 Unix 时间戳
microtime() | 返回当前 Unix 时间戳和微秒数
getdate() | 返回当前本地时间的日期/时间信息
checkdate() | 验证一个格里高历日期
date_default_timezone_get() | 返回默认时间区域格式
date_default_timezone_set() | 设定用于所有日期时间函数的默认时区
gmdate() | 格式化 GMT/UTC 日期/时间
localtime() | 返回本地时间的日期/时间信息
mktime() | 根据日期的年月日生成时间戳
sleep() | 延迟执行程序
time_nanosleep() | 延迟执行程序一定的秒数和纳秒数
time_sleep_until() | 使脚本睡眠直到指定的时间
timezone_identifiers_list() | 返回可用所有时区标识符
