Takuji YAMADA
yamad****@media*****
2008年 9月 4日 (木) 16:08:52 JST
山田と申します。 表題の件についてご質問です。 いま、下記の環境でCodeIgniterを動作させています。 ----------------------------------------- [動作環境] PHP 5.2.5 CodeIgniter 1.6.3 [PHP設定] display_errors Off [CodeIgniter設定(config/config.php)] $config['log_threshold'] = 4; ----------------------------------------- 実行中にError、Warning、Noticeなどが発生した場合、それを ログに記録するだけで画面上にはエラーメッセージを表示したくないため、 上記のように設定しました。 しかしこの設定で動かしてみると、Noticeエラーが発生した時に、 エラーメッセージが画面表示されてしまいました。 色々と試行錯誤した結果、 error_reporting(0); を実行することでNoticeエラーは画面表示されなくなりました。 (ログには全てのエラーがちゃんと記録されています) 一般的にPHPで「エラーを画面表示するかどうか」を制御する場合、 display_errors ディレクティブを使うものだと思っていたのですが、 CodeIgniter は error_reporting() で制御する必要があるのでしょうか? #codeigniter/Common.phpの_exception_handler()を見ると、 #そんな雰囲気がするのですが・・ あるいはconfig/config.phpあたりに何か設定をすると、 エラーの画面表示を制御できたりするのでしょうか?