The_Fang
Mitglied
Hola
Ich wollte mir eine kleine "errorReporting" Klasse schreiben , die falls ein Fehler auftritt nur einen Fehlerreport aussupckt ohne auch nur einbisschen Code zu zeigen, der vor dem Fehler hätte ausgesuckt werden sollen. Um diese zu gewährleisten muss man sich der "Output Buffering" Funktionen von PHP bedienen.
Es hat alles funktioniert bis ich ob_start() gesagt habe das es den Output komprimieren soll. Jetzt zeigt er keinen ErrorReport mehr an, wenn ein Fehler auftritt. Wäre nett, wenn ihr mir sagen könnt, wie ich das mit Komprission hinbekomme.
Der Folgene Code funktioniert, aber ohne Komprission.
Code mit angeschalteter Komprission:
Danke
Ich wollte mir eine kleine "errorReporting" Klasse schreiben , die falls ein Fehler auftritt nur einen Fehlerreport aussupckt ohne auch nur einbisschen Code zu zeigen, der vor dem Fehler hätte ausgesuckt werden sollen. Um diese zu gewährleisten muss man sich der "Output Buffering" Funktionen von PHP bedienen.
Es hat alles funktioniert bis ich ob_start() gesagt habe das es den Output komprimieren soll. Jetzt zeigt er keinen ErrorReport mehr an, wenn ein Fehler auftritt. Wäre nett, wenn ihr mir sagen könnt, wie ich das mit Komprission hinbekomme.
Der Folgene Code funktioniert, aber ohne Komprission.
PHP:
ob_start();
error_reporting(E_ALL);
set_error_handler("handler");
function handler($errorNumber, $errorString, $errorFile, $errorLine) {
ob_end_clean();
echo '<pre>';
echo 'no : ' . $errorNumber . "\n";
echo 'str : ' . $errorString . "\n";
echo 'file : ' . $errorFile . "\n";
echo 'line : ' . $errorLine . "\n";
echo '</pre>';
die;
}
echo "was geht?";
//require('class.php');
trigger_error("hallo");
echo "haha";
ob_end_flush();
Code mit angeschalteter Komprission:
PHP:
ob_start("ob_gzhandler");
error_reporting(E_ALL);
set_error_handler("handler");
function handler($errorNumber, $errorString, $errorFile, $errorLine) {
ob_end_clean();
echo '<pre>';
echo 'no : ' . $errorNumber . "\n";
echo 'str : ' . $errorString . "\n";
echo 'file : ' . $errorFile . "\n";
echo 'line : ' . $errorLine . "\n";
echo '</pre>';
die;
}
echo "was geht?";
//require('class.php');
trigger_error("hallo");
echo "haha";
ob_end_flush();
Danke