2010-05-20 7 views
8

silly php question ... pourquoi je ne peux pas faire cela?php accès tableau valeur de la fonction retour

echo Auth::getFullUser()[ 'country' ]; 

au lieu que vous devez faire ce

$user = Auth::getFullUser(); 
echo $user[ 'country' ]; 
+1

Je suppose que vous seriez en mesure de le faire:'echo (Auth :: getFullUser()) ['country']; ' –

+2

non, vous ne l'êtes pas. – VolkerK

Répondre

5

La syntaxe juste ne le permet pas malheureusement. AFAIK il y avait à un moment l'intention de mettre cette syntaxe dans PHP6, mais has been dropped.

+0

un grand merci pour éclaircir cela, tout en veillant à ce qu'il n'y avait pas une meilleure façon. –

1

Mauvaise conception du langage/interprète.

La même raison que vous ne pouvez pas faire "functionname"() et les fonctions ne sont pas sensibles à la casse.

+1

Pas pauvre du tout. Si vous n'aimez pas la langue, il y en a beaucoup d'autres à choisir. –

+0

ouais ce n'est pas pauvre, je veux juste enregistrer une variable supplémentaire ... était juste curieux. –

+1

Inconvenient, disons, et vous devez comprendre que Kendall Hopkins utilise aussi PHP. Nous ne sommes pas des ennemis, juste des utilisateurs honnêtes de PHP. – erisco

5

grammaire PHP permet uniquement la notation de l'indice (c.-à-['country']) à l'extrémité d'une expression variable (c.-à-$user) pas une expression (c.-à-Auth::getFullUser())