PHP日期时间运用十:将秒数转成格式为“天时分秒”

在上一篇《PHP日期时间运用九:获取某年某周的开始和结束日期》中给大家介绍了怎么获取某年某周的开始和结束日期,本文继续给大家介绍怎么将一个秒数转换成具体的天、时、分、秒的格式。

比如怎么将200000秒转成具体的天、时、分、秒的格式?

各位有没有实现的思路呢?

下面是我给出的一个实现方法,可供各位参考参考:

PHP代码如下:

<?php

function convert_seconds($seconds)
{
    $dt1 = new DateTime("@0");
    $dt2 = new DateTime("@$seconds");
    return $dt1->diff($dt2)->format('%a 天, %h 时, %i 分 %s 秒');
}
echo convert_seconds(200000)."<br>";

输出结果是:

99c90766dd96ca9daa0cac1adec933b.png

这里需要大家了解一个类,就是DateTime类。(推荐文章:《php中的datetime类怎么使用?php中datetime的用法介绍》)

DateTime更新日志如下:

PHP7.2.0版本:DateTime 的类常量现在定义在 DateTimeInterface 上。
PHP7.0.0版本:新增常量:DATE_RFC3339_EXTENDED 和 DateTime::RFC3339_EXTENDED。
PHP5.5.0版本:实现 DateTimeInterface 接口。
PHP5.4.24版本:COOKIE 格式从 2 位数字表示年份(RFC 850) 修改为 4 位数字表示年份(RFC 1036)。
PHP5.2.2版本:DateTime 对象进行比较操作(comparison operators)的时候 可以正常工作了。 在之前的版本中,当使用 == 进行相等比较的时候, 所有的 DateTime 对象都会被视为是相等的。

相关介绍:

DateTime::add — 给一个 DateTime 对象增加一定量的天,月,年,小时,分钟 以及秒。
DateTime::__construct — 返回一个新的 DateTime 对象
DateTime::createFromFormat — 根据给定的格式解析日期时间字符串
DateTime::createFromImmutable — Returns new DateTime object encapsulating the given DateTimeImmutable object
DateTime::createFromInterface — Returns new DateTime object encapsulating the given DateTimeInterface object
DateTime::getLastErrors — 获取警告和错误信息
DateTime::modify — 修改日期时间对象的值
DateTime::__set_state — __set_state 魔术方法处理函数
DateTime::setDate — 设置 DateTime 对象的日期
DateTime::setISODate — 设置 ISO 日期
DateTime::setTime — 设置 DateTime 对象的时间
DateTime::setTimestamp — 以 Unix 时间戳的方式设置 DateTime 对象
DateTime::setTimezone — 设置 DateTime 对象的时区
DateTime::sub — 对一个 DateTime 对象减去一定量的 日、月、年、小时、分钟和秒。

最后给大家推荐最新最全面的《PHP视频教程》~快来学习吧!

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » PHP日期时间运用十:将秒数转成格式为“天时分秒”