rfc:foreach-non-scalar-keys
| From: | Rasmus Schultz | 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