PHP 5.3、CentOS 6.2、httpd 2.2.15、NetBeans 7.0.1(ftp経由でリモート実行中)を使用しています。ブラウザへのPHPエラーメッセージの出力を停止します
ブラウザにエラーメッセージを表示しないようにするには、httpdのerror_logに出力するだけで十分です。
私はtry/catchを実行することでエラーを処理する方法を自分で決めることにしましたが、それでもerror_logとブラウザの両方に出力されます。
function smic_gettext($phrase){
try{
$tr_text = $this->language_array[$phrase];
} catch(Exception $e){
error_log("Couldn't find any entry in the translation file for ".$phrase.". ".$e);
return $phrase;
}
return $tr_text;
}
この動作を停止するにはどうすればよいですか?
php.iniにdisplay_errors = Offとdisplay_errors = 0を設定しようとしました。違いはありません(私はhttpdを再起動しました)。あなたのスクリプトの先頭に次を追加
セット 'はdisplay_errors = Off' – goat
**本番環境** PHPエラー/' php.ini'ファイルで無効通知、およびロギングのみを持っている必要がありますログのファイル – Jakub
サイドノート:PHPのエラーは例外的なものではありませんが(Javaのように)、例外に変換してそれに応じて処理する方法があります。 http://www.php.net/manual/en/class.errorexception.php – Mchl