Get the lenient used for the IntlDateFormatter


datefmt_is_lenient

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

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

Описание

Объектно-ориентированный стиль

public bool IntlDateFormatter::isLenient ( void )

Процедурный стиль

bool datefmt_is_lenient ( IntlDateFormatter $fmt )

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

Список параметров

fmt

The formatter resource.

Возвращаемые значения

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

Примеры

Пример #1 datefmt_is_lenient() example

<?php
$fmt 
datefmt_create(
    
'en_US',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN,
    
'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').\nResult is : " datefmt_parse($fmt'35/13/1971');
if (
intl_get_error_code() != 0) {
    echo 
"\nError_msg is : " intl_get_error_message();
    echo 
"\nError_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() != 0) {
    echo 
"\nError_msg is : " intl_get_error_message();
    echo 
"\nError_code is : " intl_get_error_code();
}

?>

Пример #2 OO example

<?php
$fmt 
= new IntlDateFormatter(
    
'en_US',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN,
    
"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').\nResult is : " $fmt->parse('35/13/1971');
if (
intl_get_error_code() != 0){
    echo 
"\nError_msg is : " intl_get_error_message();
    echo 
"\nError_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').\nResult is : " $fmt->parse('35/13/1971');
if (
intl_get_error_code() != 0) {
    echo 
"\nError_msg is : " intl_get_error_message();
    echo 
"\nError_code is : " intl_get_error_code();
}

?>

Результат выполнения данного примера:

 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 

Смотрите также