Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:42427 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 97998 invoked from network); 31 Dec 2008 19:33:48 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 31 Dec 2008 19:33:48 -0000 Authentication-Results: pb1.pair.com smtp.mail=hannes.magnusson@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=hannes.magnusson@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.218.21 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: hannes.magnusson@gmail.com X-Host-Fingerprint: 209.85.218.21 mail-bw0-f21.google.com Received: from [209.85.218.21] ([209.85.218.21:38288] helo=mail-bw0-f21.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id CB/D2-01584-B19CB594 for ; Wed, 31 Dec 2008 14:33:48 -0500 Received: by bwz14 with SMTP id 14so14764566bwz.23 for ; Wed, 31 Dec 2008 11:33:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=B3gaZbd0qsQiiZeix0bs9CvNHP3lPJtoJdMfZVB96RA=; b=UgFl5VaQXiCWUyeOobMEtNhIdOSKHMOHxodFlfoo0LIhqarVX+RpRAdVyM7LT3XaA5 KRf8c5Nwecx9uIL7HK3EInpWur51x3owEElbsGJUQ+O48K+OeLCHrgQKEIa/c6Zm5bKi aJlE9PUZFLZIwjFxLUDcdb4SN04GPBuwG6XoA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=XlfVteF7/k2m6D6geGdRxhwxzJC+rXO/Cys0kQEJJ0EyFpySPbsVt+Z4aCmr5AIDlQ xGwACcc43DYfcYGkvfGQ96dBL3EXjo7avvzTo22UuvMZIvkULMCObkNxtbbR3V/HV2GA QXk7dip8utwibGZReCBDKop/30EgYOT9g0/eI= Received: by 10.181.144.11 with SMTP id w11mr6159690bkn.27.1230752023353; Wed, 31 Dec 2008 11:33:43 -0800 (PST) Received: by 10.181.203.16 with HTTP; Wed, 31 Dec 2008 11:33:43 -0800 (PST) Message-ID: <7f3ed2c30812311133m708bcab1s746f9ca7c3129542@mail.gmail.com> Date: Wed, 31 Dec 2008 20:33:43 +0100 To: "Marcus Boerger" Cc: "Lars Strojny" , "=?ISO-8859-1?Q?David_Z=FClke?=" , "PHP Internals" In-Reply-To: <8710064882.20081231201259@marcus-boerger.de> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <08AA10DA-2704-415C-8A8C-893C89990DC1@bitextender.com> <868073456.20081231173818@marcus-boerger.de> <1230746348.25966.3.camel@localhost> <8710064882.20081231201259@marcus-boerger.de> Subject: Re: [PHP-DEV] [RFC] Re: [PHP-DEV] __invoke() weirdness From: hannes.magnusson@gmail.com ("Hannes Magnusson") On Wed, Dec 31, 2008 at 20:12, Marcus Boerger wrote: > Hello Lars, > > Wednesday, December 31, 2008, 6:59:08 PM, you wrote: > >> Hi Markus, > >> have you measured the performance impact in a class with - say - ten >> methods? And what to do with __get() and __call()? How are the >> prioritized in the method resolve order? > > Translated into user code we now have: > > public function __zend_call($name, $args) { > // Added property lookup > if (isset($this->$name)) { // may call __isset > $callable = $this->$name; // may call __get Uhmm. I hope I got this wrong as: class foo { function __isset() { return true; } function __get() { return "hello world"; } function __call() { } } $foo = new foo; $foo->foobar(); will first execute __isset(), then __get() and then __call()? That is a major backwards compatibility break, and increases the inconsistency and decreases readability 10times -Hannes