PHP Conference Nagoya 2025

IntlCalendar::getErrorCode

intlcal_get_error_code

(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)

IntlCalendar::getErrorCode -- intlcal_get_error_codeПолучает последний код ошибки объекта

Описание

Объектно-ориентированный стиль (метод):

public IntlCalendar::getErrorCode(): int|false

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

intlcal_get_error_code(IntlCalendar $calendar): int|false

Возвращает числовой код ошибки ICU для последнего вызова этого объекта (включая клонирование) или IntlCalendar, указанный для параметра calendar (в версии с процедурным стилем). Это может означать только предупреждение (отрицательный код ошибки) или полное отсутствие ошибки (U_ZERO_ERROR). Фактическое наличие ошибки можно проверить с помощью intl_is_failure().

Недействительные аргументы, обнаруженные на стороне PHP (до вызова функций библиотеки ICU), не записываются для этой функции.

Последнюю ошибку, которая произошла при любом вызове функции модуля intl, включая ошибки ранних аргументов, можно получить с помощью функции intl_get_error_code(). Эта функция сбрасывает глобальный код ошибки, а не код ошибки объекта.

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

calendar

Объект календаря в интерфейсе процедурного стиля.

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

Код ошибки ICU, указывающий на успешное выполнение, сбой или предупреждение. Возвращает false в случае возникновения ошибки.

Примеры

Пример #1 Пример использования IntlCalendar::getErrorCode() и 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()
);

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

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"

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top