IntlDateFormatter::isLenient

datefmt_is_lenient

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

IntlDateFormatter::isLenient -- datefmt_is_lenientObtener la tolerancia usada por un formateador de IntlDateFormatter

Descripción

Estilo orientado a objetos

publicIntlDateFormatter::isLenient(): bool

Estilo por procedimientos

datefmt_is_lenient(IntlDateFormatter$fmt): bool

Comprueba si el analizador es estricto o tolerante al interpretar las entradas que no coinciden exactamente con el patrón.

Parámetros

fmt

El recurso del formatedor.

Valores devueltos

true si el analizador es tolerante, false si es estricto. Por omisión, el analizador es tolerante.

Ejemplos

Ejemplo #1 Ejmplo de datefmt_is_lenient()

<?php
$fmt
= datefmt_create(
'en_US',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN,
'dd/mm/yyyy'
);
echo
'La tolerancia del formateador es : ';
if (
$fmt->isLenient() ){
echo(
'TRUE');
} else{
echo(
'FALSE');
}
datefmt_parse($fmt, '35/13/1971');
echo
"\n Intentar realizar parse('35/13/1971').\nEl resultado es : " . datefmt_parse($fmt, '35/13/1971');
if (
intl_get_error_code() !=0 ){
echo
"\nEl mensaje del error es : ".intl_get_error_message();
echo
"\nEl código del error es : ".intl_get_error_code();
}
datefmt_set_lenient($fmt,false);
echo
'Ahora la toleranca del formateador es : ';
if (
$fmt->isLenient() ){
echo(
'TRUE');
} else{
echo(
'FALSE');
}
datefmt_parse($fmt, '35/13/1971');
echo
"\n Intentar realizar parse('35/13/1971').\nEl resultado es : " . datefmt_parse($fmt, '35/13/1971');
if (
intl_get_error_code() !=0 ){
echo
"\nEl mensaje del error es : ".intl_get_error_message();
echo
"\nEl código del error es : ".intl_get_error_code();
}

?>

Ejemplo #2 Ejemplo orientado a objetos

<?php
$fmt
= new IntlDateFormatter(
'en_US',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN,
"dd/mm/yyyy"
);
echo
"La tolerancia del formateador es : ";
if(
$fmt->isLenient() ){
echo(
'TRUE');
} else{
echo(
'FALSE');
}
$fmt->parse('35/13/1971');
echo
"\n Intentar realizar parse('35/13/1971'). El resultado es : " . $fmt->parse('35/13/1971');
if (
intl_get_error_code() !=0 ){
echo
"El mensaje del error es : ".intl_get_error_message();
echo
"El código del error es : ".intl_get_error_code();
}

$fmt->setLenient(FALSE);
echo
'Ahora la toleranca del formateador es : ';
if(
$fmt->isLenient() ){
echo(
'TRUE');
} else{
echo(
'FALSE');
}
$fmt->parse('35/13/1971');
echo
"\n Intentar realizar parse('35/13/1971'). El resultado es : " . $fmt->parse('35/13/1971');
if (
intl_get_error_code() !=0 ){
echo
"El mensaje del error es : ".intl_get_error_message();
echo
"El código del error es : ".intl_get_error_code();
}

?>

El resultado del ejemplo sería:

La tolerancia del formateador es : TRUE Intentar realizar parse('35/13/1971'). El resultado es : -2147483 Ahora la toleranca del formateador es : FALSE Intentar realizar parse('35/13/1971'). El resultado es : El mensaje del error es : Date parsing failed: U_PARSE_ERROR El código del error es : 9

Ver también

To Top