Dmitry Shirokov wrote:
> <?php
> function foo()
> {
>    return array(1,2,3,4,5,6);
> }
> 
> echo foo()[4];  //  <---- it that
> // or may be (foo())[4] ?
> 
> 
> // instead of
> $var = foo();
> echo $var[4];
> ?>

 Although I am not a huge fan of method chaining in general (see [1]),
 I am happy to have it in PHP as it faciliates fluent interfaces [2].

 I makes IMHO perfect sense to also allow a similar syntax for arrays.
 But the implementation should be closed (in the mathematical sense), so
 that $o->m()[0]->n() also works, for instance, when m() returns an
 array that has an object with method n() at index 0.

 --
 [1] http://en.wikipedia.org/wiki/Law_of_Demeter
 [2] http://www.martinfowler.com/bliki/FluentInterface.html

-- 
Sebastian Bergmann                          http://sebastian-bergmann.de/
GnuPG Key: 0xB85B5D69 / 27A7 2B14 09E4 98CD 6277 0E5B 6867 C514 B85B 5D69

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to