ID: 27833 Updated by: [EMAIL PROTECTED] Reported By: steph dot fox at virgin dot net Status: Assigned Bug Type: Scripting Engine problem Operating System: * PHP Version: 5CVS-2004-04-02 (dev) Assigned To: helly New Comment:
Seems to work for PHP 5.1.3rc2-dev. Previous Comments: ------------------------------------------------------------------------ [2006-01-06 15:35:04] [EMAIL PROTECTED] Derick said this was fixed in HEAD, needs to be merged to PHP_5_2 ------------------------------------------------------------------------ [2004-04-03 12:24:11] [EMAIL PROTECTED] In PHP 5.0 this won't be supported. __toString() will only be called automatically if it's the only argument to echo/print. Note that this does not affect internal extensions such as SimpleXML who require this to work in order to be useful. The main problem with supporting automatic __toString() calls is the fact that opcodes aren't reentrant and it requires restructuring of some of the infrastructure of the engine. Looking into this is on my TODO for post-stable 5.0. Can't promise anything though. ------------------------------------------------------------------------ [2004-04-03 08:16:06] steph dot fox at virgin dot net OK, I did my research now. Sadly run-tests doesn't work on win98 due to the piping element, but I found that building PHP with zend_std_cast_object_tostring included as part of the std_object_handlers struct gets rid of all the issues & doesn't cause any new issues in ext/simplexml's test batch. (I ran them manually). Of course the other new extensions that use std_object_handlers might be adversely affected, but it's override-able (no?). It's such an easy fix (must be if I can find it!), I'm obviously missing the reason that the cast_object property's currently set as NULL. The internals list archives show a huge discussion on the subject, most of which goes straight over my head. Just looking for clarity now.. ------------------------------------------------------------------------ [2004-04-02 03:19:53] steph dot fox at virgin dot net erm, yes it does - echo $obj; // works fine echo (string) $obj; // fails - but I thought that was _meant_ to fail currently :\ Andi, when you bogus this report, could you please clarify exactly what should or shouldn't happen at this point? Docs need to reflect intended behaviour too.. ------------------------------------------------------------------------ [2004-04-02 03:13:58] [EMAIL PROTECTED] It doesn't work without the concat either. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/27833 -- Edit this bug report at http://bugs.php.net/?id=27833&edit=1