>백엔드 개발 >PHP 튜토리얼 >PHP 주말 날짜 확인이 항상 False를 반환하는 이유는 무엇입니까?

PHP 주말 날짜 확인이 항상 False를 반환하는 이유는 무엇입니까?

DDD
DDD원래의
2024-11-28 00:42:131017검색

Why Does My PHP Weekend Date Check Always Return False?

PHP에서 주말 날짜 확인

주어진 날짜가 주말에 속하는지 확인하는 동안 기존 함수가 지속적으로 'false'를 반환합니다. 코드를 자세히 살펴보고 이 겉보기에 잘못된 동작의 이유를 이해해 보겠습니다.

문제는 날짜를 구문 분석하는 방식에 있습니다. 코드에서는 date() 함수를 사용하여 요일을 문자열(예: "토요일" 또는 "일요일")로 추출한 다음 이를 정확한 문자열과 비교합니다. 이 접근 방식은 대소문자 구분 및 오타 가능성으로 인해 문제가 될 수 있습니다.

향상된 접근 방식:

대신 PHP에 내장된 날짜 기능을 활용하여 이를 단순화할 수 있습니다. 일. 다음은 몇 가지 권장 솔루션입니다.

PHP 5.1 이상:

function isWeekend($date) {
    return (date('N', strtotime($date)) >= 6);
}

이 함수는 날짜('N') 함수를 사용하여 날짜를 검색합니다. 주를 정수(1~7)로 표현합니다. 여기서 6과 7은 각각 토요일과 일요일을 나타냅니다. 결과를 6과 비교하면 날짜가 주말인지 정확하게 판단할 수 있습니다.

PHP 이전 버전의 경우:

function isWeekend($date) {
    $weekDay = date('w', strtotime($date));
    return ($weekDay == 0 || $weekDay == 6);
}

PHP 이전 버전의 경우 5.1까지는 date('w')를 사용하여 요일을 정수로 얻을 수 있습니다. 이 경우 일요일(0)과 토요일(6)이 모두 주말인지 확인하셔야 합니다.

위 내용은 PHP 주말 날짜 확인이 항상 False를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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