PHPJe me suis surpris récemment à vouloir accéder directement à un élément d'un tableau retourné par une fonction. Le tout en une seule instruction. C'est quelque chose qui ressemblais à ça :

echo bar()[1];

Mais bizarrement, ni l'analyse syntaxique de mon IDE, ni une petite interprétation par PHP n'ont apprécié cette instruction.

C'est bien dommage car au lieu de simplifier mon instruction à sa plus simple expression, j'ai du faire le choix entre rajouter une ligne, ou implémenter une fonction annexe. Certes cela ne change pas grand-chose en termes de consommation de ressources. Mais c'est désagréable.

$tmp = bar();
echo $tmp[1];

function foo($key, $array) {
return $array[$key];
}
echo foo(1, bar());

C'est malheureux de ne pas pouvoir profiter d'un tel raccourci. Surtout que ce comportement (ou cette absence de comportement disons) est bien connu de l'équipe de PHP : http://bugs.php.net/bug.php?id=41759

Voici une rapide traduction de la réponse apportée :

Cela a été discuté les plusieurs fois et actuellement personne n'est capable de fournir un patch acceptable. Consultez les archives de la liste de diffusion internals pour plus de renseignements.