2012-08-16 3 views
34

현재 날짜와 7 일을 표시하려고합니다.현재 날짜에 7 일을 더한 후

예 : 오늘은 2012년 8월 16일, 그래서이 PHP 조각은 8 월 23 일 현재 2012

$date = strtotime($date); 
    $date = strtotime("+7 day", $date); 
    echo date('M d, Y', $date); 

, I 출력을 받고 있어요 것이다 : 년 1 월 8 일 1970 년 나는 무엇을 놓치고?

+2

'$의 date'의 초기 값은 무엇입니까? – deceze

+0

그래, 그게 문제라고 생각해. 초기 값을 현재 날짜로 설정하는 방법은 무엇입니까? –

답변

98

strtotime은 자동으로 현재 유닉스 타임 스탬프를 사용하여 문자열 주석을 기반으로합니다.

그냥 수행

$date = strtotime("+7 day"); 
echo date('M d, Y', $date); 

미래 방문자에 대한 추가 정보 :이 함수에 타임 스탬프를 통과해야하는 경우는 아래 작동합니다. 이것은 어제 7 days을 계산합니다

:

$timestamp = time()-86400; 

$date = strtotime("+7 day", $timestamp); 
echo date('M d, Y', $date); 
+0

아름다운. 그것은 완벽하게 작동했습니다. 고맙습니다! –

5

그냥 넣어 당신이 찾고있는 것을 지금부터 칠일, 만약 :

$date = strtotime("+7 day", time()); 
echo date('M d, Y', $date); 
3
<?php 
print date('M d, Y', strtotime('+7 days')); 
3

당신이 을 사용하지 않은를 time() Unix Epoch (1970 년 1 월 1 일 00:00:00 GMT) 이후에 측정 된 현재 시간을 초 단위로 반환하는 함수. 이 같은 사용 :

$date = strtotime(time()); 
$date = strtotime("+7 day", $date); 
echo date('M d, Y', $date); 
6
$date = new DateTime(date("Y-m-d")); 
$date->modify('+7 day'); 
$tomorrowDATE = $date->format('Y-m-d'); 
1
$now = date('Y-m-d'); 
$start_date = strtotime($now); 
$end_date = strtotime("+7 day", $start_date); 
echo date('Y-m-d', $start_date) . ' + 7 days = ' . date('Y-m-d', $end_date); 
-1

이 코드는 나를 위해 작동 :

<?php 
$date = "21.12.2015"; 
$newDate = date("d.m.Y",strtotime($date."+2 day")); 
echo $newDate; // print 23.12.2015 
?> 
관련 문제