PHP에서 유닉스 타임 스탬프에 24 시간을 어떻게 추가합니까?


119

지금은 타임 스탬프에 24 시간을 추가하고 싶습니다. 지금 당장 타임 스탬프에 추가 할 수 있도록 24 시간 동안의 유닉스 타임 스탬프 번호를 어떻게 찾습니까?

또한 현재 타임 스탬프에 48 시간 또는 며칠을 추가하는 방법을 알고 싶습니다.

어떻게하면 최선을 다할 수 있습니까?


"48 시간 또는 며칠을 추가하는 방법"-일광 절약 시간이 문제입니까?
VolkerK

1
Álvaro G. Vicario의 대답을 지적하고 싶습니다. 24 시간을 추가하는 것이 모든 경우에 원하는 것이 아닐 수도 있습니다.
Boldewyn

1
그래, 그래서 zeckdude가 dst를 알고 있는지 그리고 그에게 관심이 있는지 알고 싶었습니다.
VolkerK

답변:


301

24 시간이 아닌 하루를 추가하는 것이 좋습니다. 다른 상황 중에서도 일광 절약 시간 제로 인해 하루 종일 24 시간이있는 것은 아닙니다.

strtotime('+1 day', $timestamp);

6
이전 질문의 다른 모든 코드가 다음 일요일 아침에 깨지기 때문에 사건은 그렇게 모호하지 않습니다. +1
Boldewyn

내 코드는이 사건 때문에 3 월이 32 일이라고 생각 했으므로 GMT로만 운영하지 않는 한 DST를 염두에 두는 것이 좋습니다.
null 허용

86

Unix 타임 스탬프는 단순히 1970 년 1 월 이후의 초 수이므로 Unix 타임 스탬프에 24 시간을 추가하려면 24 시간에 초 수를 추가하면됩니다. (24 * 60 * 60)

time() + 24*60*60;

52
24 * 60 * 60 = 86400 (누군가에게 몇 초를 절약 할 수 있음)
Andrew


16

Unix 타임 스탬프는 초 단위이므로 해당하는 시간 (초)을 타임 스탬프에 추가하면됩니다.

$timeInFuture = time() + (60 * 60 * 24);

14

DateTime 클래스도 사용할 수 있습니다 .

$timestamp = mktime(15, 30, 00, 3, 28, 2015);

$d = new DateTime();
$d->setTimestamp($timestamp);

추가 P의 의 eriod 1 D의 AY를 :

$d->add(new DateInterval('P1D'));
echo $d->format('c');

자세한 내용은 DateInterval 을 참조하십시오.


0

지금까지 타임 스탬프에 24 시간을 추가하려면 다음과 같이하면됩니다.

 <?php echo strtotime('+1 day'); ?>

위의 코드는 현재 타임 스탬프에 1 일 또는 24 시간을 추가합니다.

대신에 +1 day걸릴 수 있습니다 당신 이 원하는 대로, PHP 매뉴얼은 말한다 , strtotime으로는 어떤 영어 유닉스 타임 스탬프로 날짜 설명을 텍스트에 대한 구문 분석 할 수 있습니다 .

설명서의 예는 다음과 같습니다.

<?php
     echo strtotime("now"), "\n";
     echo strtotime("10 September 2000"), "\n";
     echo strtotime("+1 day"), "\n";
     echo strtotime("+1 week"), "\n";
     echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
     echo strtotime("next Thursday"), "\n";
     echo strtotime("last Monday"), "\n";
?>

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.