I would not consider this for arrays and objects, too. If we had real arrays, this would make sense but they are HT's and therewith it can also be explained that -1 is an element and not the end of the chained list behind the HT.
2011/6/20 Johannes Schlüter <johan...@schlueters.de> > 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 > > >