こんにちは。 最近ニュースとは関係ないことも載せてみてる管理人です。 さて、当サーバでZabbixという、サーバー、ネットワーク、アプリケーションを 監視するためのソフトウェアを導入したのですが、PHP5.3だと、 将来使えなくなるereg()関数などでエラー(警告)が表示されてしまいます。
# Function ereg_replace() is deprecated[/home/.../include/page_header.php:398] # get_class() expects parameter 1 to be object, array given[/home/.../include/classes/ctable.inc.php:138] # get_class() expects parameter 1 to be object, array given[/home/.../include/classes/ctable.inc.php:144] # get_class() expects parameter 1 to be object, array given[/home/.../include/classes/ctable.inc.php:62] # get_class() expects parameter 1 to be object, array given[/home/../include/classes/ctable.inc.php:138]
error_reportingでも回避できなかったので、 これを回避する方法を今回はご紹介したいと思います。
もうほんとに簡単にしか書きませんのでご了承を。
私の環境はyumでzabbixをインストールしました。
んで、いじくるファイルと言うか、一箇所コメントアウトするだけなのですが・・・
# vi /usr/share/zabbix/include/config.inc.php
の93行目付近に以下のような箇所があります。
93 /********** START INITIALIZATION *********/
94
95 set_error_handler(‘zbx_err_handler’);
これの、95行目の et_error_handler(‘zbx_err_handler’); に
スラッシュ2個追加してコメントアウトしてください。
93 /********** START INITIALIZATION *********/
94
95 //set_error_handler(‘zbx_err_handler’);
多分これだけで大丈夫だと思う。
私の環境では警告は全部消えました。
もし、お悩みの方がいらっしゃいましたら参考にしてみてください。