ID: 31542
Updated by: [EMAIL PROTECTED]
Reported By: jcmailtrap-php at yahoo dot ca
Status: Open
-Bug Type: Unknown/Other Function
+Bug Type: Documentation problem
Operating System: RHEL3
PHP Version: 5.0.3
New Comment:
So the one who wrote the manual page made a mistake since
eval() isn't some magic thing that can override fatal errors..
Previous Comments:
------------------------------------------------------------------------
[2005-01-14 05:31:46] jcmailtrap-php at yahoo dot ca
Well, in eval()'s manual page, it is stated:
In case of a fatal error in the evaluated code, eval() returns FALSE.
Obviously eval() did not return FALSE in this case because the script
exited.
------------------------------------------------------------------------
[2005-01-14 05:26:58] [EMAIL PROTECTED]
Fatal errors are...tadaa..FATAL! As such -> exit.
No bug here.
------------------------------------------------------------------------
[2005-01-14 05:19:51] [EMAIL PROTECTED]
Don't all E_ERRORs do this?
------------------------------------------------------------------------
[2005-01-13 18:14:34] jcmailtrap-php at yahoo dot ca
Description:
------------
When a fatal error is caused by attempting to call a method on an
non-object or non-existing variable, eval() throws a fatal error which
terminates the script instead of returning false as stated in the doc.
Reproduce code:
---------------
$result = eval('$nosuchobject->method();');
echo "done eval\n";
if ($result===false) {
echo "error correctly returned\n";
}
Expected result:
----------------
Notice: Undefined variable: nosuchobject
Fatal error: Call to a member function method() on a non-object
done eval
error correctly returned
Actual result:
--------------
Notice: Undefined variable: nosuchobject
Fatal error: Call to a member function method() on a non-object
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=31542&edit=1