#22894 [Bgs->Opn]: set_error_handler fails to pick up method reference

From: Date: Wed, 09 Apr 2003 11:50:17 +0000
Subject: #22894 [Bgs->Opn]: set_error_handler fails to pick up method reference
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-37427@lists.php.net to get a copy of this message
 ID:               22894
 User updated by:  david dot grant at wiredmedia dot co dot uk
 Reported By:      david dot grant at wiredmedia dot co dot uk
-Status:           Bogus
+Status:           Open
 Bug Type:         Class/Object related
 Operating System: Windows 2000
 PHP Version:      4.3.1
 New Comment:

I've just retested this bug with the same setup (4.3.1, IIS 5), and got
some strange results.

In the constructor, I have a single instruction:

set_error_handler(array(&$this, 'ReportError'));

Then, in the ReportError() method, I have the following:

echo ("ERROR CAUGHT");

In order to test the error handler, I instantiate the object in a
seperate script, and attempt to increment variable i , which doesn't
exist.  This *should* be handled by the error handling class, but is
not.  It is instead handled by the built-in PHP error handler.

Now for the strange part.

I added a HTML comment (echo("<!-- X -->")) to both the constructor and
the ReportError method, and PHP started to use my error reporting class
to report the error.

With further investigation, the reporting seems to change depending on
the number of lines in the file.


Previous Comments:
------------------------------------------------------------------------

[2003-04-09 05:59:12] sniper@php.net

You're doing something wrong. Not bug in PHP.


------------------------------------------------------------------------

[2003-03-26 05:50:15] david dot grant at wiredmedia dot co dot uk

I have attempted to assign a class method to "set_error_handler" using
the array approach recommended in the manual.  However, a testing error
is not picked up, and output to the HTTP response instead.

I have tried passing the object as a reference internally (e.g. &$this)
and externally with the variable name of the instance.

PHP 4.3.1
IIS 5

------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=22894&edit=1



Thread (9 messages)

« previous php.bugs (#37427) next »