Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:53416 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3432 invoked from network); 20 Jun 2011 15:36:55 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Jun 2011 15:36:55 -0000 Authentication-Results: pb1.pair.com smtp.mail=johannes@schlueters.de; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=johannes@schlueters.de; sender-id=unknown Received-SPF: error (pb1.pair.com: domain schlueters.de from 217.114.211.66 cause and error) X-PHP-List-Original-Sender: johannes@schlueters.de X-Host-Fingerprint: 217.114.211.66 config.schlueters.de Received: from [217.114.211.66] ([217.114.211.66:43304] helo=config.schlueters.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id D5/86-34681-6196FFD4 for ; Mon, 20 Jun 2011 11:36:54 -0400 Received: from [192.168.2.230] (ppp-93-104-43-78.dynamic.mnet-online.de [93.104.43.78]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by config.schlueters.de (Postfix) with ESMTPSA id 5BAD6744BA; Mon, 20 Jun 2011 17:36:49 +0200 (CEST) To: Etienne Kneuss Cc: Derick Rethans , Robert Eisele , internals@lists.php.net In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Date: Mon, 20 Jun 2011 17:36:48 +0200 Message-ID: <1308584208.6296.9.camel@guybrush> Mime-Version: 1.0 X-Mailer: Evolution 2.30.2 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Negative string offsets From: johannes@schlueters.de (Johannes =?ISO-8859-1?Q?Schl=FCter?=) On Mon, 2011-06-20 at 16:31 +0200, Etienne Kneuss wrote: > >> Negative string offsets is a wish and also an implementation of my running > >> PHP version for long. It operates in the same fashion like substr() with > >> negative offsets, but avoids the function call and is much smarter if one > >> single character has to be extracted: > Do you mean ArrayObject? ArrayAccess is the interface. > Regardless, I don't believe it makes sense to change the semantics of > those indexes for arrays, since arrays can define negative indexes. > i.e. $a = array(-1 => "foo", 2 => "bar"); $a[-1] should really be > "foo", and not "bar". This clearly shows the inconsistency this brings. Maybe $var{$offset} should be clearly deprecated for arrays and $var[$offset] for strings as in PHP they work differently. johannes