PHP 获取与处理时间的常用方法汇总

洛溪
洛溪
发布时间:2026-10-13 | 6人浏览过
原创

在PHP开发中,准确获取和格式化时间、处理文件修改记录以及进行日期计算是常见的需求。本文将介绍如何使用内置函数快速实现这些功能。

基本时间与格式

date() 是 PHP 中最常用的时间函数,可将 UNIX 时间戳格式化为可读性更好的字符串。其默认行为受服务器时区配置影响。

<?php
// 默认输出:年-月-日 时:分:秒
echo date("Y-m-d H:i:s");
?>

常用的格式化参数如下:

  • Y:四位年份(如 "2024")
  • m:数字月份,前补零("01" 至 "12")
  • d:日期,前补零("01" 至 "31")
  • H:24 小时制的小时,前补零("00" 至 "23")
  • i:分钟,前补零("00" 至 "59")
  • s:秒,前补零("00" 至 "59")
  • A:上午或下午,大写("AM" 或 "PM")

解决时区差异问题

由于部分服务器的默认时区并非中国标准时间(UTC+8),直接使用 date() 可能会导致显示时间与本地实际时间相差 8 小时。在调用时间函数前,需要显式设置时区。

<?php
// 定义时区为中国 (PRC)
date_default_timezone_set("PRC");
echo date("Y-m-d H:i:s");
?&code>

获取文件的修改时间

在处理日志文件或缓存数据时,可能需要读取文件的时间信息。filemtime() 可以返回文件内容上次被修改的时间(Unix 时间戳),该结果可直接传入 date() 进行格式化。

<?php
$filename = 'example.txt';
// 获取 Unix 时间戳
$timeStamp = filemtime($filename);
if ($timeStamp !== false) {
    // 转换为可读格式
    echo "最后修改时间:" . date("Y-m-d H:i:s", $timeStamp);
} else {
    echo "无法获取文件信息";
}
?>

计算两个日期的间隔天数

要计算两个时间点之间相隔的天数,可以使用 strtotime() 将日期字符串转换为时间戳,再根据每天固定的秒数(24 × 60 × 60 = 86400)进行除法运算。

<?php
$date1 = strtotime("2024-01-01 00:00:00");
$date2 = strtotime("2024-01-15 00:00:00");
// 相差天数
$days = ($date2 - $date1) / 86400;
echo "相差天数:" . $days;
?>
以上就是 PHP 时间处理的常用方法,涵盖了从基础格式化到时区配置和计算的各个应用场景。
相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表