PHP 5.5.16 is released

IntlDateFormatter::setLenient

datefmt_set_lenient

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

IntlDateFormatter::setLenient -- datefmt_set_lenientتعیین آسان‌گیری پارسر

Description

شیوه شی‌گرا

bool IntlDateFormatter::setLenient ( bool $lenient )

شیوه رویه‌ای

bool datefmt_set_lenient ( IntlDateFormatter $fmt , bool $lenient )

تعریف سخت‌گیری یا ملایمت پارسر در تحلیل ورودی که کاملا بر الگو منطبق نیست. فعال‌سازی تحلیل ملایم به پارسر امکان می‌دهد تا تاریخ ایراددار، الگوی زمان را بگونه‌ای تحلیل کند که مقدارها را بدست آورد. فضای خالی بیشتر، کلمات تشخیص داده نشده یامقدار غیر صحیح ("February 30th") پذیرفته نمی‌شوند.

Parameters

fmt

منبع قالب‌بندی

lenient

تعیین آسان‌گیری پارسر به صورت پیش‌فرض FALSE (سخت‌گیری) است.

Return Values

Returns TRUE on success or FALSE on failure.

Examples

Example #1 مثال datefmt_set_lenient()

<?php
$fmt 
datefmt_create("en_US"IntlDateFormatter::FULLIntlDateFormatter::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').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();
}

?>

Example #2 مثال OO

<?php
$fmt 
= new IntlDateFormatter("en_US"IntlDateFormatter::FULLIntlDateFormatter::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').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();
}

?>

The above example will output:

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

See Also

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top