出力バッファに問題があります。私はスクリプトをバッファリングしてコールバックを使用して結果を出力しています。問題は、エラーがスローされた場合、何も表示されず、空の画面が表示されることです。私は自分のカスタムエラーハンドラを設定しようとしましたが、何も動かないようです。エラーが原因で私のバッファがエラーハンドラの代わりにコールバックメソッドを呼び出す原因となっていると感じています。どちらか、それは私が静的メソッドとしてエラーハンドラを持っているが、それを変更することは他の場所で問題を引き起こすからです。出力バッファ内のエラー
私は本当に助けてくれてありがとうございます。
public function constructor()
{
ob_start(array(__CLASS__, 'render'));
self::$buffer_level = ob_get_level();
set_error_handler(array(__CLASS__, 'exception_handler'));
set_exception_handler(array(_C_LASS__, 'exception_handler'));
RUNNING MY SCRIPT HERE
ob_end_flush();
}
public static function exception_handler($exception, $message = NULL, $file = NULL, $line = NULL)
{
while (ob_get_level() > self::$buffer_level)
{
ob_end_clean();
}
echo $exception.' - '.$message.' - '.$file.' - '.$line.'<br/>';
}
Zend_Frameworkにも同様の問題があります。本当に必要なのは、すべてのob_をダンプして例外の詳細を出力するErrorHandlerです。 print_r()の時間を節約し、死ぬ( 'ここで私は')のステートメント... – Steve