[php] 날짜에 일수 추가

현재 날짜에 일수를 추가하고 싶습니다. 다음 코드를 사용하고 있습니다.

$i=30;
echo $date = strtotime(date("Y-m-d", strtotime($date)) . " +".$i."days");

그러나 적절한 날짜를 얻는 대신 나는 이것을 얻고 있습니다 :
2592000

제안 해주세요.



답변

이것은

echo date('Y-m-d', strtotime("+30 days"));

strtotime

미국 영어 날짜 형식을 포함하는 문자열이 주어질 것으로 예상하고 해당 형식을 Unix 타임 스탬프 (1970 년 1 월 1 일 00:00:00 UTC 이후의 초 수)로 구문 분석하려고 시도합니다. 지금이 제공되지 않은 경우 현재 시간입니다.

동안 date

주어진 정수 타임 스탬프 또는 타임 스탬프가 제공되지 않은 경우 현재 시간을 사용하여 주어진 형식 문자열에 따라 형식화 된 문자열을 반환합니다.

매뉴얼 페이지를 참조하십시오.

및 해당 기능 서명.


답변

이거 좋을지도 몰라

function addDayswithdate($date,$days){

    $date = strtotime("+".$days." days", strtotime($date));
    return  date("Y-m-d", $date);

}


답변

$date = new DateTime();
$date->modify('+1 week');
print $date->format('Y-m-d H:i:s');

또는 print date('Y-m-d H:i:s', mktime(date("H"), date("i"), date("s"), date("m"), date("d") + 7, date("Y"));


답변

$today=date('d-m-Y');
$next_date= date('d-m-Y', strtotime($today. ' + 90 days'));
echo $next_date;


답변

특정 날짜로부터 5 일의 날짜를 원하는 경우 다음과 같이 추가 할 수도 있습니다.

다음과 같은 날짜가있는 변수가 있습니다 (입력 또는 DB에서 가져 오거나 하드 코딩 됨).

$today = "2015-06-15"; // Or can put $today = date ("Y-m-d");

$fiveDays = date ("Y-m-d", strtotime ($today ."+5 days"));

echo $fiveDays; // Will output 2015-06-20


답변

일광 절약 시간으로 인해 시계가 변경되면 요일 만 계산할 때 몇 가지 문제가 발생할 수 있습니다.

이를 처리하는 작은 PHP 함수가 있습니다.

function add_days($date, $days) {
    $timeStamp = strtotime(date('Y-m-d',$date));
    $timeStamp+= 24 * 60 * 60 * $days;

    // ...clock change....
    if (date("I",$timeStamp) != date("I",$date)) {
        if (date("I",$date)=="1") {
            // summer to winter, add an hour
            $timeStamp+= 60 * 60;
        } else {
            // summer to winter, deduct an hour
            $timeStamp-= 60 * 60;
        } // if
    } // if
    $cur_dat = mktime(0, 0, 0,
                      date("n", $timeStamp),
                      date("j", $timeStamp),
                      date("Y", $timeStamp)
                     );
    return $cur_dat;
}


답변

시도해 볼 수도 있습니다.

$date->modify("+30 days");