- 1. 概要
- 2. 調査
- 3. 対応
1. 概要
PHP 7.2 になって、まず初めに目についたのが、ウェブサーバのエラーログに
Unknown(0) : Deprecated - Directive 'track_errors' is deprecated
というメッセージが、おそらくは PHP のモジュールにアクセスするたびに出力されるようになりました。
2. 調査
「PHP マニュアル - 付録 - PHP 7.1.x から PHP 7.2.x への移行 - PHP 7.2.x で推奨されなくなる機能」に記載がありました。
php.ini の track_errors および $php_errormsg 変数
php.ini で track_errors の設定が有効になると、 致命的でないエラーが起きた場合に、$php_errormsg 変数がローカルスコープに生成されます。 このようなエラー情報を収集するのに望ましい方法は、error_get_last() 関数を使うことなので この機能は非推奨になりました。
以上引用。
3. 対応
ってことで
/usr/local/etc/php.ini
の
; Store the last error/warning message in $php_errormsg (boolean). Setting this value
; to On can assist in debugging and is appropriate for development servers. It should
; however be disabled on production servers.
; Default Value: Off
; Development Value: On
; Production Value: Off
; http://php.net/track-errors
track_errors = On
の個所。
「Off」にしようかとも思いましたが、機能自体が非推奨なので、コメントアウトすることにしました。
|
|