#23022 [Com]: Supported dereferencing array indeces on arbitrary expressions

From: Date: Thu, 05 Nov 2009 05:43:34 +0000
Subject: #23022 [Com]: Supported dereferencing array indeces on arbitrary expressions
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-144283@lists.php.net to get a copy of this message
 ID:               23022
 Comment by:       glennwidener at gmail dot com
 Reported By:      mfischer@php.net
 Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: Any
 PHP Version:      5CVS-2003-04-02 (dev)
 New Comment:

I found this lack of symmetry in array references really lame too.  If
an expression delivers an array, then you should be able to reference an
element of that array.  The only question is operator precedence and
grouping: recommend following the C rules - primary expressions group
left to right, parenthesis disambiguate.


Previous Comments:
------------------------------------------------------------------------

[2009-02-26 08:44:45] kexianbin at diyism dot com

When could we realize this in php?

create_function('$v', <<<'fun_code'
echo $v;
fun_code
)('hello');

------------------------------------------------------------------------

[2009-02-26 08:20:58] kexianbin at diyism dot com

When could we realize this in php?

create_function('$v', <<<'fun_code'
echo $v;
fun_code
')('hello');

------------------------------------------------------------------------

[2009-02-09 03:13:11] Anatorian at gmail dot com

I think this feature is very important. It can make me happier in php
developing.

------------------------------------------------------------------------

[2009-01-29 01:32:26] jim at akubo dot net

i wish you could use the * operator (like in c++) to derference
references, is there a way todo this in php? instead of writing a new
function like array_val

------------------------------------------------------------------------

[2008-11-25 04:27:37] showmethemoney at google dot com

Guys, we really need this feature to make our code beautiful.

Now:
function get2nd(){
    $tempArray = explode(',', array('a','b','c'));
    return $tempArray[1];
}
Better:
return explode(',', array('a','b','c'))[1];
or:
return array_get(explode(',', array('a','b','c')),
'1');

Thanks.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/23022

-- 
Edit this bug report at http://bugs.php.net/?id=23022&edit=1



Thread (17 messages)

« previous php.bugs (#144283) next »