Различие между error_reporting () и ini_set ('error_reporting')?

При использовании error_reporting() или ini_set('error_reporting') в моих сценариях, там какие-либо функциональные различия между двумя? Один метод предпочтен по другому?

Если это имеет значение я вижу, что много платформ используют error_reporting(), но обе опции, кажется, установлены во время времени выполнения только, затем сбрасывают назад к их значению по умолчанию в php.ini после выполнения сценария.

12
задан Jeff 16 January 2012 в 07:12
поделиться

3 ответа

Кажется, что единственная небольшая функциональная разница заключается в том, что ini_set возвращает false, когда не удалось изменить установку, а error_reporting всегда возвращает уровень старой ошибки.

9
ответ дан 2 December 2019 в 18:19
поделиться

Они функционально идентичны, но если вы используете IDE, которая знает имена функций PHP, то это простой способ убедиться, что вы случайно не ошиблись с именем директивы, которую вы пытаетесь установить.

Из раздела примеров PHP's Manual Entry for error_reporting():

// Same as error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
4
ответ дан 2 December 2019 в 18:19
поделиться

"Две дороги, ведущие в Рим": ini_set('error_reporting', ) переопределяет параметр, заданный в php.ini файле. error_reporting() получает номер уровня или id уровня

error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

Оба параметра действуют до тех пор, пока скрипт не завершит свое исполнение. Следующий опять будет использовать параметры, определенные в .ini.

.
7
ответ дан 2 December 2019 в 18:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: