date_interval_format()函数用于格式化时间间隔。
date_interval_format()函数是DateInterval::format 的别名。此函数接受间隔和格式字符串作为参数,并以指定格式格式化给定间隔。
date_interval_format($interval, $format)
序号 | 参数及说明 |
---|---|
1 | interval (必需) 这是您需要格式化的DateInterval的对象。 |
2 | format (必需) 这是一个字符串值,指定格式。 |
此函数返回格式化间隔
此函数最初是在PHP版本5.3中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_interval_format()函数的用法-
<?php $interval = new DateInterval('P25DP8MP9Y'); $format = "%d days"; $res = date_interval_format($interval, $format); print($res); ?>测试看看‹/›
输出结果
25 days
与其他日期/时间函数不同,date_interval_format()不会重新计算日期和时间字符串中的结转点。因此,如果您传递的日期/时间值超出了它们的范围,它们将被格式化为:
<?php $interval = new DateInterval('P45M'); $format = "%m 月"; $res1 = date_interval_format($interval, $format); print($res1); $res2 = date_interval_format(new DateInterval('PT30H'), "%h 小时"); print("\n".$res2); ?>测试看看‹/›
输出结果
45 月 30 小时
以下示例计算给定日期与当前日期之间的差,并使用date_interval_format函数格式化结果-
<?php $date1 = date_create("1989-09-25"); $date2 = date_create("2012-09-09"); $interval = date_diff($date1, $date2); $res = date_interval_format($interval, '%Y 年 %d 天'); print($res); ?>测试看看‹/›
输出结果:
22 年 15 天
<?php print(date_interval_format(new DateInterval('P12D'), "%d days")."\n"); print(date_interval_format(new DateInterval('P7M'), "%m months")."\n"); print(date_interval_format(new DateInterval('P12Y'), "%y years")."\n"); print(date_interval_format(new DateInterval('PT9H'), "%h hours")."\n"); print(date_interval_format(new DateInterval('PT45S'), "%s seconds")."\n"); ?>测试看看‹/›
输出结果
22 years 7 days 12 days 7 months 12 years 9 hours 45 seconds