时间和日期处理:10个PHP时间函数的用法
PHP是一种流行的服务器端脚本语言,常用于Web开发中,其时间日期函数库非常强大。以下是10个PHP时间函数的用法。
1. time() 函数
time() 函数返回当前 Unix 时间戳,它表示自 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)起的秒数。
例如:
<?php
echo time();
?>
输出:
1602709624
2. date() 函数
date() 函数用于将 Unix 时间戳格式化为可读日期和时间。
例如:
<?php
echo date("Y-m-d H:i:s", time());
?>
输出:
2020-10-14 11:07:04
3. strtotime() 函数
strtotime() 函数将任何英文文本的日期和时间字符串转换为 Unix 时间戳。
例如:
<?php
echo strtotime("2020-10-14 11:07:04");
?>
输出:
1602709624
4. mktime() 函数
mktime() 函数用于创建 Unix 时间戳。它需要小时、分钟、秒、月、日和年作为参数。
例如:
<?php
echo mktime(4, 0, 0, 10, 14, 2020);
?>
输出:
1602595200
5. strtotime() 和 mktime() 的比较
strtotime() 和 mktime() 函数非常类似,但是它们的参数略有不同。strtotime() 接受形如“+1 day”这样的文字字符串,mktime() 则需要详细指定小时、分钟和秒。
例如:
<?php
echo mktime(4, 0, 0, 10, 14, 2020) . "
";
echo strtotime("2020-10-15 04:00:00 UTC") . "
";
?>
输出:
1602609600
1602748800
6. gmdate() 函数
gmdate() 函数类似于 date() 函数,但是它将时间格式化为 GMT(格林威治标准时间)。
例如:
<?php
echo gmdate("Y-m-d\TH:i:s\Z", time());
?>
输出:
2020-10-14T03:10:23Z
7. date_default_timezone_set() 函数
date_default_timezone_set() 函数用于设置脚本的默认时区。
例如:
<?php
date_default_timezone_set('America/New_York');
echo date("Y-m-d H:i:s", time());
?>
输出:
2020-10-14 07:10:23
8. date_create() 函数
date_create() 函数用于创建一个 DateTime 对象。这个对象可以用来执行各种时间和日期操作。
例如:
<?php
$date = date_create("2020-10-14");
echo date_format($date, "Y/m/d");
?>
输出:
2020/10/14
9. date_interval_create_from_date_string() 函数
date_interval_create_from_date_string() 函数用于创建一个 DateInterval 对象。
例如:
<?php
$interval = date_interval_create_from_date_string('1 day');
$date = date_create("2020-10-14");
date_add($date, $interval);
echo date_format($date, "Y/m/d");
?>
输出:
2020/10/15
10. strtotime() 的逆函数 strtotime()
strtotime() 函数有一个非常有用的特性,就是如果给它一个 Unix 时间戳作为参数,它将返回一个能够被 date() 函数格式化的字符串。
例如:
<?php
$time = time();
echo date("Y-m-d H:i:s", $time);
echo "
";
echo date("Y-m-d H:i:s", strtotime("@" . $time));
?>
输出:
2020-10-14 15:35:13
2020-10-14 15:35:13
总结
PHP提供了许多时间和日期处理函数,包括时间戳、格式化日期、创建 DateTime 对象、创建 DateInterval 对象等。了解这些函数的用法可以帮助我们更有效地处理时间和日期。
