Каковы причины, по которым PHP отображает ошибки даже при использовании error_reporting(0)?

Автотрейд
Автотрейд
  • Сообщений: 14
  • Последний визит: 20 января 2025 в 01:49
Каковы некоторые причины, по которым PHP принудительно отображает ошибки, независимо от того, что вы приказываете ему отключить?
я пробовал
error_reporting(0);
ini_set('display_errors', 0); 

безуспешно.
Редактировалось: 1 раз (Последний: 19 января 2025 в 02:25)
DST Global
DST Global
  • Сообщений: 6
  • Последний визит: Сегодня в 13:45
Большинство ошибок E_STRICT оцениваются во время компиляции, поэтому о таких ошибках не сообщается в файле, где error_reporting расширен за счет включения ошибок E_STRICT (и наоборот).

Если ваша базовая система настроена на сообщение об ошибках E_STRICT, они могут быть выведены еще до того, как ваш код будет рассмотрен. Не забывайте, что error_reporting/ini_set — это оценки во время выполнения, и все, что выполняется на этапе «до запуска», не увидит своего эффекта.

Судя по вашему комментарию, ваша ошибка…

Ошибка синтаксического анализа: синтаксическая ошибка, неожиданная T_VARIABLE, ожидание ',' или ';' в /usr/home/REDACTED/public_html/dev.php в строке 11

Тогда применяется та же общая концепция. Ваш код никогда не запускается, так как он синтаксически недействителен (вы забыли ';'). Таким образом, ваше изменение отчета об ошибках никогда не встречается.

Чтобы исправить это, необходимо изменить отчеты об ошибках на уровне системы. Например, на Apache вы можете разместить…
php_value error_reporting 0

в файле .htaccess, чтобы подавить их все, но это зависит от конфигурации системы.

Прагматично: не пишите файлы с синтаксическими ошибками :)
Редактировалось: 2 раза (Последний: 19 января 2025 в 02:25)
Технопарк Нобель
Технопарк Нобель
  • Сообщений: 9
  • Последний визит: 20 января 2025 в 01:51
Чтобы предотвратить появление ошибок, вы можете:
— Напишите в .htaccess: php_flag display_errors 0
— Разделите свой код на отдельные модули, где основной (родительский) файл PHP устанавливает только error_logging, а затем включить() другие файлы.
Владимир Соколов
Владимир Соколов
  • Сообщений: 14
  • Последний визит: 20 января 2025 в 01:48
Используйте phpinfo, чтобы найти загруженный php.ini и отредактировать его, чтобы скрыть ошибки. Он переопределяет то, что вы вставили в свой скрипт.
Авторизуйтесь, чтобы писать на форуме.

Заявка на услуги DST

Наш специалист свяжется с вами, обсудит оптимальную стратегию сотрудничества,
поможет сформировать бизнес требования и рассчитает стоимость услуг.

Адрес

Ижевск, ул. Воткинское шоссе, д. 170 Е, Технопарк Нобель, офис 1117

8 495 1985800
Заказать звонок

Режим работы: Пн-Пт 10:00-19:00

info@dstglobal.ru

Задать вопрос по почте

Укажите ваше имя
Укажите ваше email
Укажите ваше телефон