Bug #14687 Updated: Ignoring @'s after set_error_handler() is used
| From: | zeev@php.net | Date: | Fri, 28 Dec 2001 14:09:27 +0000 |
| Subject: | Bug #14687 Updated: Ignoring @'s after set_error_handler() is used | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-75177@lists.php.net to get a copy of this message | ||
ID: 14687
Updated by: zeev
Reported By: matthew_dean@hotmail.com
Old Status: Open
Status: Closed
Bug Type: Scripting Engine problem
Operating System: Redhat 7.0, Solaris 7
PHP Version: 4.0.6
New Comment:
It's the programmer's responsibility to honor error_reporting in the error handler. The
error handler will be called even if the error that occured is not inside the error_reporting mask -
to allow you to conduct logging, recovery, etc.
You can easily honor it by using the return value of error_reporting(), and compare it (using &)
with the error level that you got.
Previous Comments:
------------------------------------------------------------------------
[2001-12-24 10:16:05] matthew_dean@hotmail.com
<?php
function myErrorHandler($errorNum) {
echo "$errorNum\n";
}
set_error_handler("myErrorHandler");
#error_reporting (E_ALL);#doesn't change the bug behaviour
@$j=$i;
?>
This echos:
8
Yet according to: http://www.php.net/manual/en/function.set-error-handler.php
"Of particular note is that this value will be 0 if the statement that caused the error was
prepended by the @ error-control operator. "
I've tried this on 4.0.4pl1 and 4.0.6
The changelog for 4.1.0 doesn't mention a fix.
The @ works fine for lines executed before set_error_handler().
Here's one of the configure lines, though (to me) it doesn't seem likely to be a compiley
issue...
'./configure' '--with-db' '--enable-dba' '--with-gdbm'
'--with-xml' '--with-oci8=/usr/local/oracle/'
'--with-apxs=/usr/local/apache-1.3.14/bin/apxs' '--with-mysql=/usr/local/mysql'
'--with-gd' '--with-sablot'
Thanks!
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=14687&edit=1