(Fatal) error<\/b>: +(.+) in (.+)<\/b> on line (\d+)<\/b>
/i', $buffer, $matches)) { header("Location: " . SITE_URL . "error.php"); exit; } return $buffer; } /** * エラー画面を表示させるための関数. * * この関数は, set_error_handler() 関数に登録するための関数である. * trigger_error にて E_USER_ERROR が生成されると, ob_end_clean() 関数によって * 出力バッファリングが無効にされ, エラーログを出力した後, エラーページへ * リダイレクトする. * * E_USER_ERROR 以外のエラーが生成された場合, この関数は true を返す. * * @param integer $errno エラーコード * @param string $errstr エラーメッセージ * @param string $errfile エラーが発生したファイル名 * @param integer $errline エラーが発生した行番号 * @return void|boolean E_USER_ERROR が発生した場合は, エラーページへリダイレクト; * E_USER_ERROR 以外の場合は true */ function handle_error($errno, $errstr, $errfile, $errline) { switch ($errno) { case E_USER_ERROR: ob_end_clean(); error_log("FATAL Error($errno) $errfile:$errline $errstr"); header("Location: " . SITE_URL . "error.php"); exit(1); break; case E_USER_WARNING: case E_USER_NOTICE: default: } return true; } ?>