Andi
At 03:55 PM 4/2/2004 +1200, Jevon Wright wrote:
Can you add a default __toString() for all objects (which don't extend or implement a __toString()) then? Because at least then we could use $str = $anyobj->__toString(). Otherwise I don't think __toString() has any real functionality, except for print and echo...
Jevon
----- Original Message ----- From: "Marcus Boerger" <[EMAIL PROTECTED]> To: "David Giffin" <[EMAIL PROTECTED]> Cc: "Marcus Boerger" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> Sent: Friday, April 02, 2004 12:27 PM Subject: Re: [PHP-DEV] __toString() with cast is broken in php5 RC1
> Hello David, > > generally the idea is to change this back. But i don't think we will > be able to solve the related problems before PHP 5.1. > > marcus > > Friday, April 2, 2004, 2:03:38 AM, you wrote: > > > > Hi Marcus, > > > Is this going to change back? The php5 documentation on the zend site > > shows that both casting and print/echo should work. > > > I guess people could use the output buffering methods to get the print > > data for the time being. A not so happy work around :( > > > Thanks again, > > David > > > > On Fri, 2 Apr 2004, Marcus Boerger wrote: > > >> Hello David, > >> > >> that's correct. See the NEWS file, 3rd entry: > >> > >> 18 March 2004, PHP 5 Release Candidate 1 > >> - Fixed numerous bugs with the just-in-time auto-global initialization, that > >> could cause $_SERVER, $argv/$argc and other variables not to work properly. > >> (Zeev) > >> - Fixed data corruption with constant assignments to object properties. (Zeev) > >> - Changed __toString() to be called automatically only with print and echo > >> statements. (Andi) > >> > >> Friday, April 2, 2004, 1:13:28 AM, you wrote: > >> > >> > >> > Hi There, > >> > >> > I just got a chance tp update to PHP5 RC1 and noticed that some things > >> > have changed for the __toString method. It seems that it it only getting > >> > called when the object is printed or echo. Casting the object to a string > >> > returns the Object #. Here is an example: > >> > >> > >> > >> > ---- The Script: > >> > >> > <?php > >> > >> > class obj > >> > { > >> > function __toString() > >> > { > >> > return "yo!!\n"; > >> > } > >> > } > >> > >> > $obj = new obj(); > >> > print_r($obj); > >> > >> > $test = (string) $obj; > >> > >> > print $test; > >> > print $obj; > >> > >> ?>> > >> > >> > ----- Produces: > >> > >> > obj Object > >> > ( > >> > ) > >> > Object id #1yo!! > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > >
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php