2011-12-31 12 views
0

はなぜCodeIgniterのようにCodeigniterのエラーログファイルにエラーが表示されますが、画面上にエラーメッセージが表示されずに正常に動作します - なぜですか?方法は、それらが正常に動作するためにポイントする場合

ERROR - 2011-12-31 11:43:36 --> Severity: Warning --> Invalid argument supplied for foreach() /var/www/example.com/htdocs/application/views/home/home_vw.php 53 


ERROR - 2011-12-31 11:43:36 --> Severity: Notice --> Undefined variable: questions /var/www/example.com/htdocs/application/views/home/home_vw.php 53 

としてapplication/logsのエラーを示すだろう---と、画面上のエラーメッセージはありませんか?

私のindex.phpは

error_reporting(E_ALL);

と設定この現象の理由についての任意のアイデア

$config['log_threshold'] = 1;

に設定されていますか?

+0

PHPはおそらく、display_errors offとlog_errorsをオンに設定しています。これは通常、プロダクションサーバーのベストプラクティスとみなされます。 – GordonM

+0

しかし、変数についてのCIの定義は未定義です。実際に定義され、フロントエンドで適切に表示されているのですか? – pepe

+0

空である変数は、未定義と同じではありません。どちらの場合も、出力には空文字列として表示されますが、前者はE_NOTICEメッセージをトリガーします。あなたがそれらを見ることができないという事実は、display_errorsがオフになっているだけで、彼らは起こっていないからではありません。 – GordonM

答えて

1

上記のエラーはWarningNoticeですが、これらはスクリプトの実行を妨げる致命的なエラーではありません。したがって、次の確率があります。

1.あなたのページは別のページにリダイレクトされるため、印刷前にこのエラー警告が消えます。

2.は警告が印刷されていますが、それはHTMLコメント内に印刷されたときにそれが起こることができ、それを見ることができないか、それがどのdivかそこらの背後にある、その場合に検出するview-sourceを試してみてください。

@ signを使用してエラーを抑制するときにも発生する可能性があります。

+0

ありがとう@usman、それはオプション#1だった - 今固定 – pepe

+0

それが助けて嬉しい:) – Usman

関連する問題