php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #13846 Patch: Use [ ] as shortcut for array()
Submitted: 2001-10-27 02:42 UTC Modified: 2001-10-29 02:14 UTC
From: z4k4ri4 at bigfoot dot com Assigned:
Status: Closed Package: Feature/Change Request
PHP Version: 4.0.6 OS: Any
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: z4k4ri4 at bigfoot dot com
New email:
PHP Version: OS:

 

 [2001-10-27 02:42 UTC] z4k4ri4 at bigfoot dot com
In my script I use a lot of nested array() or array() as
parameter. So the array() things start to get in the way.
I assume many PHP programmer feels the same thing.

We need a short version of array() construct, and I think
the [] is the best choice. It is used in python and ruby.

After a little bit trying I finally could make a patch and
make it work on my server.

I hope this patch will find its way to official php soon.

WARNING:
I'm new in this whole bison & C thing so I maybe making some
silly mistake.

--- php-4.0.6/Zend/zend_language_parser.y.zak	Sun May  6 21:36:25 2001
+++ php-4.0.6/Zend/zend_language_parser.y	Sat Oct 27 11:20:06 2001
@@ -481,6 +481,7 @@
 	|
'@' { zend_do_begin_silence(&$1 CLS_CC); } expr {
zend_do_end_silence(&$1 CLS_CC); $$ = $3; }
 	|
scalar
			{ $$ = $1; }
 	|
T_ARRAY '(' array_pair_list ')' { $$ = $3; }
+
|
'[' array_pair_list ']' { $$ = $2; }
 	|
'`' encaps_list '`'		{ zend_do_shell_exec(&$$, &$2 CLS_CC); }
 	|
T_PRINT expr  { zend_do_print(&$$, &$2 CLS_CC); }
 ;
@@ -533,6 +534,7 @@
 	|
'+' static_scalar	{ $$ = $1; }
 	|
'-' static_scalar	{ zval minus_one;  minus_one.type = IS_LONG;
minus_one.value.lval = -1;  mul_function(&$2.u.constant,
&$2.u.constant, &minus_one);  $$ = $2; }
 	|
T_ARRAY '(' static_array_pair_list ')' { $$ = $3;
$$.u.constant.type = IS_CONSTANT_ARRAY; }
+
|
'[' static_array_pair_list ']' { $$ = $2; $$.u.constant.type
= IS_CONSTANT_ARRAY; }
 ;
 
 

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-10-27 02:49 UTC] z4k4ri4 at bigfoot dot com
My browser mangling the patch see if these works

--- php-4.0.6/Zend/zend_language_parser.y.zak	Sun May  6 21:36:25 2001
+++ php-4.0.6/Zend/zend_language_parser.y	Sat Oct 27 11:20:06 2001
@@ -481,6 +481,7 @@
 	|	'@' { zend_do_begin_silence(&$1 CLS_CC); } expr { zend_do_end_silence(&$1 CLS_CC); $$ = $3; }
 	|	scalar				{ $$ = $1; }
 	|	T_ARRAY '(' array_pair_list ')' { $$ = $3; }
+	|	'[' array_pair_list ']' { $$ = $2; }
 	|	'`' encaps_list '`'		{ zend_do_shell_exec(&$$, &$2 CLS_CC); }
 	|	T_PRINT expr  { zend_do_print(&$$, &$2 CLS_CC); }
 ;
@@ -533,6 +534,7 @@
 	|	'+' static_scalar	{ $$ = $1; }
 	|	'-' static_scalar	{ zval minus_one;  minus_one.type = IS_LONG; minus_one.value.lval = -1;  mul_function(&$2.u.constant, &$2.u.constant, &minus_one);  $$ = $2; }
 	|	T_ARRAY '(' static_array_pair_list ')' { $$ = $3; $$.u.constant.type = IS_CONSTANT_ARRAY; }
+	|	'[' static_array_pair_list ']' { $$ = $2; $$.u.constant.type = IS_CONSTANT_ARRAY; }
 ;
 
 

 [2001-10-29 02:14 UTC] sniper@php.net
We are not going to make PHP as obscure as Perl is.

--Jani

 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Sat May 10 23:01:29 2025 UTC