Я работаю над проектом @ home и использую WAMP для разработки. В настоящее время файл php.ini
имеет следующие строки, установленные следующим образом:
error_reporting = E_ALL & ~E_DEPRECATED display_errors = On
Я надеялся, что это предотвратит появление предупреждений об устаревании. Однако это не так. Есть ли способ, которым я могу настроить error_reporting
чтобы игнорировать устаревшие предупреждения.
Результат, который я получаю в настоящее время:
Вы можете использовать эту функцию:
error_reporting(E_ALL ^ E_DEPRECATED);
http://www.php.net/manual/en/function.error-reporting.php
Или используйте оператор «@» перед именем функции.
@mysql_connect();
В вашем файле php.ini измените следующее .. (note wamp имеет 2 разных файла php.ini, поэтому внесите изменения и для обоих)
из этого
error_reporting = E_ALL
к этому
error_reporting = E_ALL & ~E_DEPRECATED
Если вы хотите показать все ошибки, кроме устаревших, используйте этот параметр:
error_reporting = E_ALL ^ E_DEPRECATED
Изменить: вы также можете создать собственный обработчик ошибок, чтобы скрыть только предупреждения mysql_
устаревания:
set_error_handler(function($errno, $errstr) { return strpos($errstr, 'mysql_') === 0; }, E_DEPRECATED);
Но учтите, что функции mysql_
устарели. Поэтому вместо того, чтобы пытаться скрыть ошибки, рассмотрите возможность переключения на mysqli
или PDO
.
Задайте свой отчет об ошибке
error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
на вашей php-странице.
У меня такая же проблема. Оказалось, однако, что я отредактировал неправильный файл php.ini
. В моем случае правильный был
C:\wamp64\bin\php\php5.6.25\phpForApache.ini
и в этом файле я изменил эту строку на:
error_reporting = E_ALL & ~E_DEPRECATED
.
Не изменилось то, что я изменил в этом «очевидном» файле php.ini
.
Чтобы скрыть ошибки php на сервере WAMP, откройте файл php.ini и найдите следующую строку кода
error_reporting = E_ALL
и замените его на
error_reporting = E_ALL & ~E_NOTICE
Все ошибки будут скрыты / отключены.