欢迎访问宙启技术站
智能推送

PHP日期和时间函数指南:实现各种日期时间格式化操作

发布时间:2023-06-22 11:54:46

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() | 返回可用所有时区标识符