(PHP 5.5.0, PHP 7, PECL >= 3.0.0a1)
IntlCalendar::getErrorCode -- intlcal_get_error_code — Obtener el código de error del objeto
Estilo orientado a objetos (method):
Estilo por procedimientos:
Devuelve el código numérico del error de ICU de la última llamada sobre este objeto
(incluyendo la clonación) o el IntlCalendar dado al
parámetro calendar
(en la versión procedimental).
Esto podría indicar solamente una advertencia (código de error negativo) o ningún
error en absoluto (U_ZERO_ERROR
). La presencia real de un
error puede ser comprobada con intl_is_failure().
Los argumentos no válidos detectados en el lado de PHP (antes de invocar a funciones de la biblioteca ICU) no se registran para los propósitos de esta función.
El último error que ocurrió en cualquier llamada a una función de la extensión intl, incluyendo errores de argumentos anteriores, se puede obtener con intl_get_error_code(). Esta función reinicia el código de errores global, pero no el código de error del objeto.
calendar
El objeto calendario, en la interfaz procedimental.
Un código de error de ICU que indica éxito, fallo o una advertencia.
Ejemplo #1 IntlCalendar::getErrorCode() y IntlCalendar::getErrorMessage()
<?php
ini_set("intl.error_level", E_WARNING);
ini_set("intl.default_locale", "nl");
$intlcal = new IntlGregorianCalendar(2012, 1, 29);
var_dump(
$intlcal->getErrorCode(),
$intlcal->getErrorMessage()
);
$intlcal->fieldDifference(-1e100, IntlCalendar::FIELD_SECOND);
var_dump(
$intlcal->getErrorCode(),
$intlcal->getErrorMessage()
);
El resultado del ejemplo sería:
int(0) string(12) "U_ZERO_ERROR" Warning: IntlCalendar::fieldDifference(): intlcal_field_difference: Call to ICU method has failed in /home/glopes/php/ws/example.php on line 10 int(1) string(81) "intlcal_field_difference: Call to ICU method has failed: U_ILLEGAL_ARGUMENT_ERROR"