FreeBSD - メンテナンス・トラブルシュート - PHP - ログ - レベル

クラウディア 
1. 概要
2. 設定

1. 概要

 本項は、「PHPで「Notice:」のエラー表示を抑える方法 - Qiita」を参考にさせていただきました。  ログを出力するレベルに関する設定は

/usr/local/etc/php.ini
 に記述しておりまして、デフォルトでは

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
 と記述されております。  でまぁ、この設定だと、「E_NOTICE」すなわち「通知」レベルのものまで出力されています。  ちょっと、この設定だと、不要なものまで出力されてしまいます。  「E_NOTICE」には、下位互換により現在は、推奨されていない記述があったり、戻り値に戻らない値があったり・・・これは、承知の上で記述していると、あまり見たくはないのです。

2. 設定

 前項の設定を

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
 と書き換えてやれば、これは出力されなくなります。  つまり

error_reporting = E_ALL
 で、全ログを出力するのですが

error_reporting = E_ALL & ~レベルシンボル
 と記述することで、「~」は、除外をあらわし、そのレベルのものは出力しなくなるわけです。  この設定

service apache24 configtest
service apache24 graceful
 で、サーバを再起動しないと反映してくれません。