Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:41477 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 94292 invoked from network); 27 Oct 2008 18:39:50 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 27 Oct 2008 18:39:50 -0000 Authentication-Results: pb1.pair.com header.from=sean@caedmon.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=sean@caedmon.net; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain caedmon.net from 64.15.79.181 cause and error) X-PHP-List-Original-Sender: sean@caedmon.net X-Host-Fingerprint: 64.15.79.181 iconoclast.caedmon.net Linux 2.5 (sometimes 2.4) (4) Received: from [64.15.79.181] ([64.15.79.181:59451] helo=iconoclast.caedmon.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A4/F7-34199-5FA06094 for ; Mon, 27 Oct 2008 13:39:49 -0500 Received: from localhost (localhost [127.0.0.1]) by iconoclast.caedmon.net (Postfix) with ESMTP id 5EA5E1E0031; Mon, 27 Oct 2008 14:39:42 -0400 (EDT) X-Virus-Scanned: Debian amavisd-new at iconoclast.caedmon.net Received: from iconoclast.caedmon.net ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fiR8DG6gr4KT; Mon, 27 Oct 2008 14:39:32 -0400 (EDT) Received: from [10.8.0.2] (sarcasm.vpn [10.8.0.2]) by iconoclast.caedmon.net (Postfix) with ESMTP id 20EBC1E0022; Mon, 27 Oct 2008 14:39:32 -0400 (EDT) Cc: =?ISO-8859-1?Q?Johannes_Schl=FCter?= , Alexey Zakhlestin , Ionut Gabriel Stan , Mark van der Velden , Stanislav Malyshev , PHP Internals Message-ID: To: Andrei Zmievski In-Reply-To: <490609A1.7090400@gravitonic.com> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v929.2) Date: Mon, 27 Oct 2008 14:39:35 -0400 References: <4900DB81.4000805@zend.com> <4900E150.1010607@dynom.nl> <49018FC3.90302@gmail.com> <1224854888.19390.89.camel@goldfinger.johannes.nop> <490609A1.7090400@gravitonic.com> X-Mailer: Apple Mail (2.929.2) Subject: Re: [PHP-DEV] array_key_exists BC break From: sean@caedmon.net (Sean Coates) >> btw. this also affects quite a few other functions: next/current/ >> key/... >> at least ... and maybe more after using the "new" parameter parsing >> API. > > I would say "no" for 5.3. But for 6 it would be fantastic to have > all array-related operations supporting ArrayAccess interface, where > possible. I was hoping someone would revive this thread (-: In Habari, we have/had an ArrayObject that we passed to the view (theme). As far as the theme knows, this is an array (but it has extra methods if the theme is particularly smart). Unfortunately, this breaks in 5.3, because many of the themes use reset() to get the first element of the array (ArrayObject, but the theme doesn't necessarily know this). This is a real-world BC break, and without allowing ArrayObject to act like an array, it's nearly useless. We've temporarily "solved" this by casting the ArrayObject to an array, which is silly. This should be fixed in 5.3, IMO. I discussed this with Johannes a bit, yesterday. S