rfc:foreach-non-scalar-keys

From: Date: Tue, 29 Jan 2013 13:03:40 +0000
Subject: rfc:foreach-non-scalar-keys
Groups: php.internals 
Request: Send a blank email to internals+get-65371@lists.php.net to get a copy of this message
I just saw this RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys By "non-scalar", presumably we're talking about objects? In the numbers that e.g. resources typically get used, having a collection indexed by resources would seem like an extremely exotic need. Moreover, we already have this: http://php.net/manual/en/class.splobjectstorage.php I just want to note that, while allowing non-scalar keys may seem like a natural addition, we're not talking about a simple change to the foreach statement - we're talking about a fundamental change to the array type. So I will point out two things: 1. Allowing non-scalar keys in arrays takes away an error-condition that would normally be reported: accidentally using an object as a key (which could even work in some cases, and could cause objects not to be garbage collected.) 2. SplObjectStorage already solves this problem - minus e.g. resources, but you could put your resources in an object and address that (very exotic) need. Bottom line, I'm not in favor of this idea - it just doesn't seem necessary or really even beneficial to me. - Rasmus Schultz

« previous php.internals (#65371) next »