2016-07-15 74 views
1

我如何從今天開始僅在1周之前退回dateTimedateTime今天前一天的返回日期

我這樣做:

if ($_POST['interval'] == 88) { 

    $dayNumber = "7"; 
    $pid = 'P1W'; 
} 

$now = new DateTime($dayNumber . " days ago"); 
$interval = new DateInterval($pid); // 1 Day interval 
$period = new DatePeriod($now, $interval, $dayNumber); 

這回天前1周,但今天+之間的所有天,這是不好的。

+0

你的意思是今天(1周減去1天)後的6天嗎? – RichardAtHome

+0

不,我的意思是隻在1周前返回1天,例如今天15/07年返回08/07天 – Rovog

+0

這就是這個時期,我想你想使用子方法:http://php.net/manual /en/datetime.sub.php – ymas

回答

0

尋找這樣的事情,讓我知道它是否適合你

$dateString = "2016-07-15"; // for example 
$minus6 = date('Y-m-d', strtotime("$dateString -7 days")); 
0

嗯,你的代碼是doind是:$now = new DateTime('7 days ago');

$現在將返回「2016年7月8日」從今天(2016-07-15)。

您不需要Interval和Period來僅返回一個日期。