라이브러리

[PHP] IntlDateFormatter::setLenient - 파서의 관대함 설정




IntlDateFormatter::setLenient

`IntlDateFormatter::setLenient` 메소드는 `IntlDateFormatter` 객체의 leniency 설정을 변경합니다. leniency는 날짜 포맷에 대한 유효성 검사를 수행할 때 사용하는 설정입니다.

Leniency 설정


leniency 설정에는 세 가지 옵션이 있습니다.

* `IntlDateFormatter::LENIENT`: 유효성 검사를 수행하지 않습니다. 날짜 포맷에 오류가 있더라도 정상적으로 처리됩니다.
* `IntlDateFormatter::STRICT`: 유효성 검사를 수행합니다. 날짜 포맷에 오류가 있으면 예외가 발생합니다.
* `IntlDateFormatter::EXCEPTION_FOR_INVALID_FIELD`: 유효성 검사를 수행합니다. 날짜 포맷에 오류가 있으면 예외가 발생합니다. 오류가 발생한 필드를 포함한 날짜 포맷 문자열이 예외 메시지에 포함됩니다.

예제


다음 예제에서는 `IntlDateFormatter` 객체를 생성하고 leniency 설정을 변경하여 유효성 검사를 수행하는 방법을 보여줍니다.

#hostingforum.kr
php

<?php



// IntlDateFormatter 객체 생성

$dateFormatter = new IntlDateFormatter('ko_KR', IntlDateFormatter::FULL, IntlDateFormatter::FULL);



// leniency 설정을 LENIENT로 변경

$dateFormatter->setLenient(IntlDateFormatter::LENIENT);



// 유효성 검사를 수행하지 않음

try {

    $date = $dateFormatter->parse('2022-02-30');

    echo "유효한 날짜: $date
";

} catch (Exception $e) {

    echo "유효하지 않은 날짜: " . $e->getMessage() . "
";

}



// leniency 설정을 STRICT로 변경

$dateFormatter->setLenient(IntlDateFormatter::STRICT);



// 유효성 검사를 수행

try {

    $date = $dateFormatter->parse('2022-02-30');

    echo "유효한 날짜: $date
";

} catch (Exception $e) {

    echo "유효하지 않은 날짜: " . $e->getMessage() . "
";

}



// leniency 설정을 EXCEPTION_FOR_INVALID_FIELD로 변경

$dateFormatter->setLenient(IntlDateFormatter::EXCEPTION_FOR_INVALID_FIELD);



// 유효성 검사를 수행

try {

    $date = $dateFormatter->parse('2022-02-30');

    echo "유효한 날짜: $date
";

} catch (Exception $e) {

    echo "유효하지 않은 날짜: " . $e->getMessage() . "
";

}



이 예제에서는 `IntlDateFormatter` 객체를 생성하고 leniency 설정을 변경하여 유효성 검사를 수행하는 방법을 보여줍니다. 유효성 검사를 수행하지 않음, 유효성 검사를 수행, 오류가 발생한 필드를 포함한 날짜 포맷 문자열이 예외 메시지에 포함되는 세 가지 경우를 다룹니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 442 페이지

검색

게시물 검색