Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23882 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 39933 invoked by uid 1010); 3 Jun 2006 13:05:29 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 39918 invoked from network); 3 Jun 2006 13:05:28 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Jun 2006 13:05:28 -0000 X-PHP-List-Original-Sender: shiznatz@gmail.com X-Host-Fingerprint: 64.233.182.186 nf-out-0910.google.com Linux 2.4/2.6 Received: from ([64.233.182.186:53433] helo=nf-out-0910.google.com) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id A3/29-22639-81981844 for ; Sat, 03 Jun 2006 09:05:28 -0400 Received: by nf-out-0910.google.com with SMTP id n28so1010016nfc for ; Sat, 03 Jun 2006 06:05:24 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=SGzFn8E/Jd4PRr8LOhkn7xgWOOmCWYuOZT7tIAzt4VnLowNcjAwwNosx7T56p161Q4odx/IM3m8WnXpmqMwmbJoEmdEA5sZmUKIlH9o9grMcStrzUVWM0YT3w82bjz3cM9mJk+4gEVyIZdTADKt76WCSixMRxpZ7XTv6eG63uLM= Received: by 10.48.14.16 with SMTP id 16mr1597127nfn; Sat, 03 Jun 2006 06:05:24 -0700 (PDT) Received: by 10.49.55.15 with HTTP; Sat, 3 Jun 2006 06:05:23 -0700 (PDT) Message-ID: <1944df00606030605i4da58ab0s479b884fdd3bc1f5@mail.gmail.com> Date: Sat, 3 Jun 2006 23:05:23 +1000 To: "Marcus Boerger" Cc: internals@lists.php.net In-Reply-To: <1782297159.20060603150251@marcus-boerger.de> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <795156743.20060603134212@marcus-boerger.de> <281938697.20060603144727@marcus-boerger.de> <1944df00606030555i4e0e1c21oa6db0ede201dc021@mail.gmail.com> <1782297159.20060603150251@marcus-boerger.de> Subject: Re: [PHP-DEV] Missing __toString() part From: shiznatz@gmail.com ("Robert Amos") Thats fair, as long as it doesn't result in any unwanted behaviour then I'm +1. -Rob On 6/3/06, Marcus Boerger wrote: > Hello Robert, > > well lazy is a good point here but __toString is all about lazyness. > Then again as said you might want to have objects naturally convert > to strings whereever possible. Generally when providing a __toString > implementation you say that you want this. And then you might as well > expect that your objects can be used as index to arrays. > > The example is as said an object that can be used to calculate the > index to an array. Assuming you deal with persons derived from > a database as classes, your person objects might be implmeneted so > that __toString simply returns the name of the persons. Now when your > application also has an array that stores more information about the > persons it would be nice if you could access that array direectly by > your peson objects. > > best regards > marcus > > Saturday, June 3, 2006, 2:55:00 PM, you wrote: > > > Hi, > > > Is it really worth enabling a whole new area where problems could > > occur just for this? Can you provide an example of where it might > > actually be considered useful and not just being lazy? > > > -Rob > > > On 6/3/06, Marcus Boerger wrote: > >> Hello Pierre, > >> > >> ever thought that we use tests to check special behavior and that > >> those snippets have little to do with real applications? Obviously > >> not. The idea behind is that for instance you might use an array as > >> a translation and use an object to *calculate* the index. > >> > >> Saturday, June 3, 2006, 2:40:29 PM, you wrote: > >> > >> > Hi, > >> > >> > On 6/3/06, Marcus Boerger wrote: > >> >> Hello guys, > >> >> > >> >> the attached patch closes one more __toString() part. It allows > >> >> to use objects that define __toString as indexes to arrays. What do > >> >> you guys think about this, should we add it or stay with the old > >> >> behavior that didn't allow objects as indexes at all. > >> > >> > $arr[new Test] = 'abc'; > >> > >> > makes very little sense to me, as well as > >> > >> > $a = new Test; $arr[$a] = 'abc'; > >> > >> > Do we really want to support that? > >> > >> > --Pierre > >> > >> > >> > >> Best regards, > >> Marcus > >> > >> -- > >> PHP Internals - PHP Runtime Development Mailing List > >> To unsubscribe, visit: http://www.php.net/unsub.php > >> > >> > > > > -- > > Xnyo - http://xnyo.odynia.org/ > > > > > Best regards, > Marcus > > -- Xnyo - http://xnyo.odynia.org/