developer tip

오늘 자정에 타임 스탬프를 받고 있습니까?

optionbox 2020. 8. 3. 08:29
반응형

오늘 자정에 타임 스탬프를 받고 있습니까?


오늘 자정에 PHP에서 타임 스탬프를 얻는 방법은 무엇입니까? 월요일 오후 5시이고 월요일 (오늘) 자정 (오전 12시)의 타임 스탬프를 원합니다.

감사합니다


$timestamp = strtotime('today midnight');

PHP가 제공하는 것을 살펴보고 싶을 수도 있습니다 : http://php.net/datetime


strtotime ()의 32 비트 제한을 넘어서 날짜를 만드는 데 아무런 문제가 없으므로 새로운 PHP DateTime 객체를 사용해야한다고 생각합니다. 다음은 오늘 자정에 데이트하는 방법에 대한 예입니다.

$today = new DateTime();
$today->setTime(0,0);

또는 PHP 5.4 이상을 사용하는 경우 다음과 같이 할 수 있습니다.

$today = (new DateTime())->setTime(0,0);

그런 다음를 사용 echo $today->format('Y-m-d');하여 객체 출력 형식을 얻을 수 있습니다 .

PHP DateTime 객체


오늘 자정에 쉬운.

$stamp = mktime(0, 0, 0);

당신은 태양이 발 바로 아래로 지나가는 가장 최근의 천계 사건의 시간을 계산하려고합니다. 정오를 표시하는 현지 규칙에 맞게 조정하고 사람들이 직장에서 집으로 돌아온 후 충분한 일광을 남길 수 있도록 조정합니다. 다른 정치적 고려 사항.

겁나? 실제로 이것은 일반적인 문제이지만 완전한 대답은 위치에 따라 다릅니다.

$zone = new \DateTimeZone('America/New_York'); // Or your own definition of “here”
$todayStart = new \DateTime('today midnight', $zone);
$timestamp = $todayStart->getTimestamp();

“여기”의 잠재적 정의는 https://secure.php.net/manual/en/timezones.php에 나와 있습니다.


$today_at_midnight = strtotime(date("Ymd"));

당신이 무엇을하는지 알려줘야합니다.

설명

내가 한 것은 PHP의 날짜 함수를 사용하여 시간에 대한 참조없이 오늘 날짜를 얻은 다음 날짜와 시간을 획기적인 타임 스탬프로 변환하는 'string to time'기능에 전달하는 것입니다. 시간이 없으면 그 날의 첫 번째 초를 가정합니다.

참고 자료 : 날짜 기능 : http://php.net/manual/en/function.date.php

String To Time : http://us2.php.net/manual/en/function.strtotime.php


$timestamp = strtotime('today midnight');

와 같다

$timestamp = strtotime('today');

서버에서의 작업이 약간 줄어 듭니다.


더 객체 방식으로 :

$today = new \DateTimeImmutable('today');

예:

 echo (new \DateTimeImmutable('today'))->format('Y-m-d H:i:s');
// will output: 2019-05-16 00:00:00

과:

echo (new \DateTimeImmutable())->format('Y-m-d H:i:s');
echo (new \DateTimeImmutable('now'))->format('Y-m-d H:i:s');
// will output: 2019-05-16 14:00:35

$midnight = strtotime('midnight');이다 유효한
또한 시도 할 수 strtotime('12am')또는 strtotime('[input any time you wish to here. e.g noon, 6pm, 3pm, 8pm, etc]'). 기본값이 오늘이므로 자정 전에 오늘 추가를 건너 뛰었습니다.


Carbon을 사용하는 경우 다음을 수행 할 수 있습니다. 이 날짜를 형식화하여 ExpireHTTP 헤더 를 설정할 수도 있습니다 .

Carbon::parse('tomorrow midnight')->format(Carbon::RFC7231_FORMAT)

참고 URL : https://stackoverflow.com/questions/13129817/getting-a-timestamp-for-today-at-midnight

반응형