Gra*_*ant 20 php date subtraction
我想从约会中减去1个月.
$today = date('m-Y');
Run Code Online (Sandbox Code Playgroud)
这给出了:08-2016
我怎样才能减去一个月才能得到07-2016?
Mam*_*mta 40
<?php
echo $newdate = date("m-Y", strtotime("-1 months"));
Run Code Online (Sandbox Code Playgroud)
产量
07-2016
Run Code Online (Sandbox Code Playgroud)
Ale*_*sov 10
警告!如果在一个月末打电话给上述例子将不起作用.
<?php
$now = mktime(0, 0, 0, 10, 31, 2017);
echo date("m-Y", $now)."\n";
echo date("m-Y", strtotime("-1 months", $now))."\n";
Run Code Online (Sandbox Code Playgroud)
将输出:
10-2017
10-2017
Run Code Online (Sandbox Code Playgroud)
以下示例将生成相同的结果:
$date = new DateTime('2017-10-31 00:00:00');
echo $date->format('m-Y')."\n";
$date->modify('-1 month');
echo $date->format('m-Y')."\n";
Run Code Online (Sandbox Code Playgroud)
有很多方法可以在另一个线程中找到解决问题的方法:PHP DateTime :: modify添加和减去月份
根据您的 PHP 版本,您可以使用 DateTime 对象(如果我没记错的话,在 PHP 5.2 中引入):
<?php
$today = new DateTime(); // This will create a DateTime object with the current date
$today->modify('-1 month');
Run Code Online (Sandbox Code Playgroud)
您可以将另一个日期传递给构造函数,它不必是当前日期。更多信息:http : //php.net/manual/en/datetime.modify.php
尝试这个,
$today = date('m-Y');
$newdate = date('m-Y', strtotime('-1 months', strtotime($today)));
echo $newdate;
Run Code Online (Sandbox Code Playgroud)