>백엔드 개발 >PHP 튜토리얼 >내 PHP 시간 비교 코드가 작동하지 않는 이유는 무엇입니까?

내 PHP 시간 비교 코드가 작동하지 않는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-10 16:16:03253검색

Why is My PHP Time Comparison Code Not Working?

PHP에서 시간 비교: 시간 공개

PHP에서 시간을 비교하는 것은 시간에 민감한 애플리케이션을 처리할 때 중요한 작업입니다. 이를 효과적으로 수행하기 위해 프로그래머는 관련된 기술과 함정을 알아야 하는 경우가 많습니다. PHP의 시간 비교에 대한 더 깊은 이해를 얻기 위해 특정 시나리오와 해당 솔루션을 살펴보겠습니다.

도전 과제: 시간 비교

다음 코드를 고려하세요.

$ThatTime = "14:08:10";
$todaydate = date('Y-m-d');
$time_now = mktime(date('G'), date('i'), date('s'));
$NowisTime = date('G:i:s', $time_now);
if ($NowisTime >= $ThatTime) {
    echo "ok";
}

이 코드에서는 현재 시간($NowisTime)이 지정된 시간보다 크거나 같은지 확인하려고 합니다. ($그때). 그러나 코드가 예상대로 작동하지 않는 것 같습니다.

해결책: 정확한 시간 계산

이 문제를 해결하려면 PHP에서 시간을 비교하는 올바른 방법은 다음과 같습니다. strtotime() 함수를 사용하여 시간($ThatTime)의 문자열 표현을 타임스탬프로 변환합니다. 타임스탬프는 시간을 숫자로 표현한 것이므로 쉽게 비교할 수 있습니다. 수정된 해결책은 다음과 같습니다.

$ThatTime = "14:08:10";
if (time() >= strtotime($ThatTime)) {
    echo "ok";
}

이제 코드는 현재 타임스탬프가 지정된 시간보다 크거나 같은지 정확하게 확인합니다.

대체 접근 방식

strtotime()을 사용하는 것 외에도 시간에 대한 다른 방법을 사용할 수도 있습니다. 비교:

  • DateTime 클래스: 날짜 및 시간 처리에 대한 보다 객체 지향적인 접근 방식을 제공합니다.
  • DateTime::diff(): 두 DateTime 개체 간의 차이를 계산하여 시간을 비교할 수 있습니다.

PHP의 시간 비교 기술과 뉘앙스를 이해함으로써 시간에 민감한 작업을 정확하고 효과적으로 처리하는 애플리케이션을 자신 있게 개발할 수 있습니다.

위 내용은 내 PHP 시간 비교 코드가 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.