$a = [1,2,$b[11]];
Is that confusing enough for you? ;-)
What's confusing about it?
The fact that $b[11] references an item of an array, while [1,2,$b[11]] assigns values to the array $a. The fact that you (and, probably, most of us) can't tell right off the bat is a clear sign that this is a bad idea, because it's ambiguous and confusing.
The same line using the current syntax, btw, would have looked like this:
$a = array (1,3,$b[11]);
Actually, $a = [1,2,$b[11]] would be amazingly clear and expressive in comparison with the rather verbose array() version (same thing with the swap, btw).
I guess we'll have to agree to disagree :)
$a = [1,2,$b[11]] is semantically inconsistent.
As you can see the ambiguity is gone--square brackets are used for one purpose and nothing else.
Actually, do you realize that you use () both for "grouping" and for application? I can't see anything wrong with using square brackets for array element access and array creation, to be honest.
Actually, no, I don't. I'm not sure what "grouping" and "application" mean...
Mt.
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php