PHP 时间格式转换:strtotime 与 date 函数详解及示例

叶初
叶初
发布时间:2026-10-15| 6人浏览过
原创

解决PHP中时间格式不一致的问题,核心思路是利用 strtotime() 将原始时间字符串转换为数字型的时间戳,再利用 date() 函数将其重新格式化为可读的日期样式。

核心方法:双重函数配合

要实现时间格式的修改,通常需要两个步骤:首先解析,其次格式化。最经典的组合是 strtotime() 与 date()。

完整示例代码:

$date_string = $list['pubdate'];
$timestamp = strtotime($date_string);
$new_format_date = date("Y-m-d", $timestamp);

上述代码的作用是将变量 $list['pubdate'] 中的内容先转为时间戳,再以“年-月-日”的格式输出。

详细函数解析

第一步:解析时间字符串 - strtotime()

功能:

strtotime() 函数用于将任何英文文本的日期或时间描述(如 "now"、"+1 day" 或 "2023-10-01")解析为 Unix 时间戳(自 1970 年 1 月 1 日以来的秒数)。这是后续处理的基础。

语法:

strtotime(time, now)

参数说明:

  • time:必需。规定要解析的时间字符串。例如 "2024-05-20 10:00:00"。
  • now:可选。规定用来计算返回值的参照时间戳。如果省略该参数,则默认使用当前时间。

第二步:格式化时间戳 - date()

功能:

date() 函数可将获取到的 Unix 时间戳格式化为更具可读性的日期和时间字符串。它支持丰富的格式化选项。

语法:

date(format, timestamp)

参数说明:

  • format:必需。规定结果字符串的格式。常用的包括:
    - Y:四位年份(如 2024)
    - m:两位月份数字(01-12)
    - d:两位月份中的天数(01-31)
    - H:24小时制小时数
    - i:分钟数
    - s:秒数
  • timestamp:可选。规定 Unix 时间戳。如果不填,默认使用当前时间。

实际应用案例

假设数据库读取出的发布时间字段 $pubdate 格式混乱,需要统一处理为标准格式显示:

// 假设 $pubdate 包含 'Oct 5, 2023'
echo date("Y/m/d", strtotime($pubdate)); 
// 输出: 2023/10/05

// 如果需要具体的时分秒
echo date("Y-m-d H:i:s", strtotime($pubdate));
// 输出: 2023-10-05 00:00:00 (若原时间无精确时刻)

通过这种组合方式,开发人员可以轻松应对各种前端展示需求下的时间格式调整问题。

以上就是PHP修改时间格式的详细内容,更多关于PHP日期处理技巧的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。