이 문서에서는 주로 PHP를 사용하여 날짜 형식이 유효한지 확인하는 방법에 대해 설명합니다. 필요한 참조 값이 있는 경우 도움이 될 수 있기를 바랍니다.
백엔드 개발에서는 프런트엔드에서 전달한 매개변수의 적법성을 확인해야 하는 경우가 많습니다. 날짜 매개변수를 확인하려면 다음 방법을 통해 확인할 수 있습니다.
/** * 校验日期格式是否合法 * @param string $date * @param array $formats * @return bool */ function isDateValid($date, $formats = array('Y-m-d', 'Y/m/d')) { $unixTime = strtotime($date); if(!$unixTime) { //无法用strtotime转换,说明日期格式非法 return false; } //校验日期合法性,只要满足其中一个格式就可以 foreach ($formats as $format) { if(date($format, $unixTime) == $date) { return true; } } return false; }
설명:
왜 strtotime() 함수만 사용하면 시간을 정확하게 확인할 수 없나요?
올바른 형식의 날짜가 strtotime()을 사용하여 타임스탬프로 변환될 수 있는 한(예: 2018-02-31 날짜와 같이) 논리적으로 말하면 이 날짜는 존재하지 않지만 strtotime() 함수는 여전히 변환할 수 있습니다. 타임스탬프로 성공적으로 변환되었으므로 date()를 사용하여 타임스탬프를 표준 형식으로 변환한 다음 수신 날짜와 비교해야 합니다. 또한 불법.
PHP 자체에도 시간을 확인하는 기능이 있습니다<span style='font-family: 微软雅黑, "Microsoft YaHei";'>checkdate()</span>
이 기능에는 월, 일, 연도라는 세 가지 매개변수가 필요합니다. 예를 들어, 위 날짜는 다음과 같이 checkdate 함수를 호출하여 감지할 수 있습니다.
if(checkdate(2, 31, 2018)) { echo '日期格式正确'; } else { echo '日期格式不正确'; }
관련 튜토리얼:PHP 비디오 튜토리얼
위 내용은 날짜 형식의 적법성을 확인하는 PHP 학습? (strtotime() 및 date() 사용)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!