CMS*_*CMS 124
你可以使用strtotime:
$date = strtotime('2010-01-01 -1 year');
Run Code Online (Sandbox Code Playgroud)
该strtotime函数返回一个unix时间戳,以获取可以使用的格式化字符串date:
echo date('Y-m-d', $date); // echoes '2009-01-01'
Run Code Online (Sandbox Code Playgroud)
Ale*_*lex 93
使用strtotime()函数:
$time = strtotime("-1 year", time());
$date = date("Y-m-d", $time);
Run Code Online (Sandbox Code Playgroud)
小智 49
使用DateTime对象...
$time = new DateTime('2099-01-01');
$newtime = $time->modify('-1 year')->format('Y-m-d');
Run Code Online (Sandbox Code Playgroud)
或者现在使用今天
$time = new DateTime('now');
$newtime = $time->modify('-1 year')->format('Y-m-d');
Run Code Online (Sandbox Code Playgroud)
saa*_*adk 27
我使用和运作良好的最简单方法
date('Y-m-d', strtotime('-1 year'));
Run Code Online (Sandbox Code Playgroud)
这工作得很完美..希望这也会帮助别人.. :)
// set your date here
$mydate = "2009-01-01";
/* strtotime accepts two parameters.
The first parameter tells what it should compute.
The second parameter defines what source date it should use. */
$lastyear = strtotime("-1 year", strtotime($mydate));
// format and display the computed date
echo date("Y-m-d", $lastyear);
Run Code Online (Sandbox Code Playgroud)
在我的网站上,为了检查注册人是否年满 18 岁,我简单地使用了以下内容:
$legalAge = date('Y-m-d', strtotime('-18 year'));
Run Code Online (Sandbox Code Playgroud)
之后,只比较两个日期。
希望它可以帮助某人。
尽管对此问题有许多可接受的答案,但我没有看到任何sub使用该\Datetime对象的方法示例:https : //www.php.net/manual/en/datetime.sub.php
因此,作为参考,您还可以使用 a\DateInterval来修改\Datetime对象:
$date = new \DateTime('2009-01-01');
$date->sub(new \DateInterval('P1Y'));
echo $date->format('Y-m-d');
Run Code Online (Sandbox Code Playgroud)
返回:
2008-01-01
Run Code Online (Sandbox Code Playgroud)
有关 的更多信息\DateInterval,请参阅文档:https : //www.php.net/manual/en/class.dateinterval.php
| 归档时间: |
|
| 查看次数: |
133523 次 |
| 最近记录: |