Mailinglisten-Archive |
Hallo Leude, habe folgendes Problem. Ich möchte gerne eine Warnung (E_WARNING) abfangen und dafür meine eigene Fehlerbehandlung verwenden. Der Aufruf soll in einer Klasse erfolgen. Wenn ich eine function ausserhalb der Klasse verwende, funktioniert alles einwandfrei, bein einem Aufruf wie folgt, innerhalb einer Klasse, geht jarnischt...;o) Jemand eine Idee warum -> in der Doku steht wortwörtlich: (bei set_error_handler) Note: Instead of a function name, an array containing an object reference and a method name can also be supplied. jemand eine Idee, was ich falsch mache? Grüße Jochen Metzger ---------- Code snippet ---------- <?php function show_err($errno,$errstr){ print "<h3>Errorhandler als function</h3>"; print "<br>$errno ... $errstr"; } class foo{ function show_err($errno,$errstr){ print "<h3>Errorhandler als methode</h3>"; print "<br>$errno ... $errstr"; } function set_err_handler_test1(){ $result=set_error_handler(array($this,"show_err")); if ($result == FALSE) print "<br>Uups, initialisierung handler leider schiefgelaufen"; error_reporting (E_WARNING); } function set_err_handler_test2(){ $result=set_error_handler(array(&$this,"show_err")); if ($result == FALSE) print "<br>Uups, initialisierung handler leider schiefgelaufen"; error_reporting (E_WARNING); } function test_it(){ $test = "hallo"; $t_string = array_shift($test); } } $tp = new foo(); print "<h3>1. Versuch --- errorhandler als function </h3>"; set_error_handler("show_err"); error_reporting (E_WARNING); $tp -> test_it(); print "------------------------------"; print "<h3>2. Versuch --- errorhandler als methode </h3>"; $tp -> set_err_handler_test1(); $tp -> test_it(); print "------------------------------"; print "<h3>2. Versuch --- errorhandler als methode </h3>"; $tp -> set_err_handler_test2(); $tp -> test_it(); ?>
php::bar PHP Wiki - Listenarchive