Re: Re: Short syntax for array literals [...]
| From: | Marcus Boerger | Date: | Thu, 29 May 2008 12:49:14 +0000 |
| Subject: | Re: Re: Short syntax for array literals [...] | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-37994@lists.php.net to get a copy of this message | ||
Hello Sebastian,
-1, right now we have [] only in read context. And an array will be
constructed with 'array' keyword. Loosing this distinction is a bit of a
draw back for me.
marcus
Wednesday, May 28, 2008, 12:58:24 AM, you wrote:
> fyi - i added a RFC
> http://wiki.php.net/rfc/shortsyntaxforarrays
> please add your votes
> cheers
> Sebastian
> Sebastian Deutsch schrieb:
>> dont have karma - but I would love it! so +1 here.
>> would it make sense to write an RFC?
>>
>> cheers
>>
>> Sebastian
>>
>> Stan Vassilev | FM schrieb:
>>> Hi,
>>>
>>> I hear this often by other developers and I tend to agree with them,
>>> that arrays are used often, and often nested, so that having a long
>>> syntax for array literals tend to produce less legible code than in
>>> other scriping languages.
>>>
>>> $a = array(array(1,2), array(3,4), 5, 6);
>>>
>>> $b = array('a' => 1, 'b' =>2);
>>>
>>> We use arrays in our configurations, in passing complex parameters to
>>> functions, fetching information from databases, basically everything.
>>> So it adds up.
>>>
>>> Some frameworks have somewhat funny attempts to remedy this by
>>> introducing "shortcuts" like this: function a() { return
>>> func_get-args(); }. Of course this doesn't work when you need to
>>> specify the key name, and the overhead isn't worth it.
>>>
>>> It looks as there may not be a specific reason not to allow the JS
>>> syntax as an alternative syntax (while keeping the current one in
>>> parallel):
>>>
>>> $a = [[1, 2], [3, 4], 5, 6];
>>>
>>> $b = ['a' => 1, 'b' =>2];
>>>
>>> There shouldn't be confusion to the parser as the brackets aren't
>>> preceded by an identifier.
>>>
>>> Was this discussed before on the list?
>>>
>>> Regards, Stan Vassilev
Best regards,
Marcus