<?php
$date = new DateTime('2000-01-20');
$date->sub(new DateInterval('P10D'));
echo $date->format('Y-m-d') . "\n";
?>
Run Code Online (Sandbox Code Playgroud)
'D'是几天,'P'在格式中代表什么?
Jav*_*ava 20
'P'代表Period.请看这里http://php.net/manual/en/dateinterval.construct.php
unc*_*exo 10
我认为可以更详细地回答。首先,DateInterval
构造函数方法接受一个名为$interval_spec
字符串的参数。
DateInterval::__construct ( string $interval_spec )
Run Code Online (Sandbox Code Playgroud)
该参数的规格如下:
格式以字母 P 开头,表示句点。每个持续时间段由一个整数值表示,后跟一个时间段指示符。如果持续时间包含时间元素,则规范的该部分前面有字母 T。
参数中使用了一些句号:
让我们看一些使用句号指示符的示例:
有一个订单需要按照文档中的描述进行维护:
单位类型必须从左侧的最大比例单位到右侧的最小比例单位输入。所以几年前几个月,几个月前几天,几天前几分钟,等等。因此一年零四天必须表示为 P1Y4D,而不是 P4D1Y。
该规范也可以表示为 datetime。
但是这种格式的值不能超过给定时间段的滚动点(例如 25 小时无效)。