2013-05-26 3 views
0

Quelqu'un peut-il donner une bonne explication de la signification de {} en php?à quoi servent {} en php?

Dans l'exemple, il y a:

<?php 

... 

$site['mediaImages']  = "{$site['url']}media/images/"; 

... 

?> 

Pas comme si classique définition de l'instruction ou la fonction.

+2

Dans cet exemple, les crochets sont inutiles. Sinon, ils indiqueraient la fin de la variable (s'il n'y a pas d'espace ou quelque chose d'autre, comme [] dans ce cas). – Damon

+0

merci, j'éditer du code mon ami a écrit, mais c'est la première fois que je vois quelque chose comme ça. Merci beaucoup! –

+1

Dans cette syntaxe, ils ne sont PAS inutiles, car vous ne pouvez utiliser que des clés de tableau entre guillemets utilisant la "syntaxe complexe". –

Répondre

6

Les accolades aident PHP à déterminer où se termine votre variable. Par exemple

$hello = "hola"; 
echo "$helloworld"; // error: undefined variable $helloworld 
echo "{$hello}world"; // echo "holaworld" 
+0

Informations supplémentaires ici: http://php.net/manual/fr/language.types.string.php Syntaxe complexe (bouclée) – user4035

2

C'est la syntaxe d'analyse de variable complexe.

Ceci n'est pas appelé complexe car la syntaxe est complexe, mais parce que permet l'utilisation d'expressions complexes. Une variable scalaire, un élément de tableau ou une propriété d'objet avec une représentation de chaîne peut être incluse via cette syntaxe. Il suffit d'écrire l'expression de la même manière qu'elle apparaîtrait en dehors de la chaîne, et puis de l'insérer dans {et}. Puisque {ne peut pas être échappé, cette syntaxe sera seulement reconnue lorsque le $ suit immédiatement le {. Utilisez {\ $ pour pour obtenir un littéral {$. Quelques exemples pour préciser:

Rechercher « syntaxe complexe (Curly) » sur cette page: http://php.net/manual/en/language.types.string.php

+0

Le lien direct est http://www.php.net/manual/fr/language. types.string.php # language.types.string.parsing.complex – Barmar

+0

merci peter spasiba: D –