IntlDateFormatter
PHP Manual

IntlDateFormatter::isLenient

datefmt_is_lenient

(No version information available, might be only in CVS)

IntlDateFormatter::isLenient -- datefmt_is_lenientGet the lenient used for the IntlDateFormatter

Description

Object oriented style

boolean IntlDateFormatter::isLenient ( void )

Procedural style

boolean datefmt_is_lenient ( IntlDateFormatter $fmt )

Check if the parser is strict or lenient in interpretting inputs that do not match the pattern exactly.

Liste de paramètres

fmt

The formatter resource.

Valeurs de retour

TRUE if parser is lenient, FALSE if parser is strict. By default the parser is strict.

Exemples

Exemple #1 datefmt_is_lenient() example

<?php
$fmt 
datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGO
RIAN  
,"dd/mm/yyyy");
echo 
"lenient of the formatter is : ";
if( 
$fmt->isLenient() ){
        echo(
'TRUE');
}else{
        echo(
'FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo 
"\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"Error_msg is : ".intl_get_error_message();
        echo 
"Error_code is : ".intl_get_error_code();
}
datefmt_set_lenient($fmt,false);
echo 
"Now lenient of the formatter is : ";
if( 
$fmt->isLenient() ){
        echo(
'TRUE');
}else{
        echo(
'FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo 
"\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"Error_msg is : ".intl_get_error_message();
        echo 
"Error_code is : ".intl_get_error_code();
}

?>

Exemple #2 OO example

<?php
$fmt 
= new IntlDateFormatter"en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GRE
GORIAN
,"dd/mm/yyyy"  );
echo 
"lenient of the formatter is : ";
if( 
$fmt->isLenient() ){
        echo(
'TRUE');
}else{
        echo(
'FALSE');
}
$fmt->parse("35/13/1971");
echo 
"\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"Error_msg is : ".intl_get_error_message();
        echo 
"Error_code is : ".intl_get_error_code();
}

$fmt->setLenient(FALSE);
echo 
"Now lenient of the formatter is : ";
if( 
$fmt->isLenient() ){
        echo(
'TRUE');
}else{
        echo(
'FALSE');
}
$fmt->parse("35/13/1971");
echo 
"\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"Error_msg is : ".intl_get_error_message();
        echo 
"Error_code is : ".intl_get_error_code();
}

?>

L'exemple ci-dessus va afficher :

         
lenient of the formatter is : TRUE
Trying to do parse('35/13/1971').
Result is : -2147483
Now lenient of the formatter is : FALSE
Trying to do parse('35/13/1971').
Result is : Error_msg is : Date parsing failed: U_PARSE_ERROR Error_code is : 9

Voir aussi


IntlDateFormatter
PHP Manual