IntlDateFormatter::isLenient
datefmt_is_lenient
(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
IntlDateFormatter::isLenient -- datefmt_is_lenient — Retourne la sévérité utilisée pour IntlDateFormatter
Description
Style orienté objet
public bool IntlDateFormatter::isLenient
( void
)
Style procédural
Vérifie si l'analyseur est strict ou souple lors de l'interprétation des chaînes qui ne correspondent pas exactement au modèle recherché.
Valeurs de retour
TRUE
si l'analyseur est souple, FALSE
si l'analyseur est strict.
Par défaut, l'analyseur est souple.
Exemples
Exemple #1 Exemple avec datefmt_is_lenient()
<?php $fmt = datefmt_create( 'en_US', IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, 'dd/mm/yyyy' ); echo 'Le formateur est strict : '; if ($fmt->isLenient()) { echo 'Oui'; } else { echo 'Non'; } datefmt_parse($fmt, '35/13/1971'); echo "\n Tentative d'analyse de la date '35/13/1971'.\nLe résultat est : " . datefmt_parse($fmt, '35/13/1971'); if (intl_get_error_code() != 0) { echo "\nError_msg est : " . intl_get_error_message(); echo "\nError_code est : " . intl_get_error_code(); } datefmt_set_lenient($fmt,false); echo Maintenant, le formateur est strict : '; if ($fmt->isLenient()) { echo 'Oui'; } else { echo 'Non'; } datefmt_parse($fmt, '35/13/1971'); echo "\n Tentative d'analyse de la date '35/13/1971'.Le résultat est : " . datefmt_parse($fmt, '35/13/1971'); if (intl_get_error_code() != 0) { echo "\nError_msg est : " . intl_get_error_message(); echo "\nError_code est : " . intl_get_error_code(); } ?>
Exemple #2 Exemple orienté objet
<?php $fmt = new IntlDateFormatter( 'en_US', IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/mm/yyyy" ); echo "Le formateur est strict : "; if ($fmt->isLenient()) { echo 'Oui'; } else { echo 'Non'; } $fmt->parse('35/13/1971'); echo "\n Tentative d'analyse de la date '35/13/1971'.\nLe résultat est : " . $fmt->parse('35/13/1971'); if (intl_get_error_code() != 0){ echo "\nError_msg est : " . intl_get_error_message(); echo "\nError_code est : " . intl_get_error_code(); } $fmt->setLenient(FALSE); echo 'Now lenient of the formatter is : '; if ($fmt->isLenient()) { echo 'Oui'; } else { echo 'Non'; } $fmt->parse('35/13/1971'); echo "\n Tentative d'analyse de la date '35/13/1971'.\nLe résultat est : " . $fmt->parse('35/13/1971'); if (intl_get_error_code() != 0) { echo "\nError_msg est : " . intl_get_error_message(); echo "\nError_code est : " . intl_get_error_code(); } ?>
L'exemple ci-dessus va afficher :
Le formateur est strict : Oui Tentative d'analyse de la date '35/13/1971'. Le résultat est : 34503180 Maintenant, le formateur est strict : Non Tentative d'analyse de la date '35/13/1971'. Le résultat est : Error_msg est : Date parsing failed: U_PARSE_ERROR Error_code est : 9
Voir aussi
- datefmt_set_lenient() - Configure la souplesse de l'analyseur
- datefmt_create() - Crée un formateur de date