ID: 30504 Updated by: [EMAIL PROTECTED] Reported By: danieltalsky at gmail dot com -Status: Open +Status: Bogus Bug Type: Output Control Operating System: FreeBSD PHP Version: 5.0.1 New Comment:
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php . Previous Comments: ------------------------------------------------------------------------ [2004-10-21 01:19:06] danieltalsky at gmail dot com Description: ------------ Unexpected behaviors when using a custom error reporting function. 1. a failed require() reports a E_WARNING (instead of the expected E_ERROR) and then uses the default PHP fatal error (it appear TWICE) 3. calling a bogus function like foobar() DOES create a fatal error, but uses the default PHP error output and never reaches my custom handler Note: This is a CLI script. Reproduce code: --------------- function pv_shell_error_logger( $errno, $errstr, $errfile, $errline){ switch ($errno){ case E_ERROR: print ('E_ERROR'); break; case E_WARNING: print ('E_WARNING'); break; } return true; } // set to the user defined error handler set_error_handler("pv_shell_error_logger", (E_ERROR|E_WARNING|E_PARSE)); // Test1 prints 'E_WARNING' but also stops code execution require('this should produce a fatal error'); // Test2 uses PHP's default error handler foobar('this should use the custom error handler'); Expected result: ---------------- There's two test cases here... Test1: the require() statement prints out E_WARNING, but stops program execution Test2: the foobar() function throws a default PHP fatal error and stops program execution Actual result: -------------- Test1: should print E_ERROR and continue execution unless there is an exit()/die() in the custom handler Test2: same ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=30504&edit=1
