2010-09-15 3 views
2

Je suis en train d'imprimer une variable entre accolades commeecho PHP ne fonctionne pas

Product_number{product_version} 

J'ai essayé

echo "$product_number{$product_version}"; 

Mais cela ne fonctionne pas. Je ne comprends pas pourquoi :(

+2

ce n'est pas question d'écho, mais * syntaxe des chaînes *. Très important de comprendre cela. –

Répondre

10

essayer d'utiliser des accolades doubles:

echo "$product_number{{$product_version}}"; 

Vous pouvez également faire:.

echo "$product_number{".$product_version."}"; 

{ suivie $ est traitée spécialement Il est principalement utilisé lorsque vous voulez ajouter une chaîne immédiatement à la fin de la valeur d'une variable:

$v = 'hack'; 
echo "I {$v}ed it"; 
+2

+1 pour une bonne explication –

3
echo $product_number . "{" . $product_version . "}"; 
2

Escape the "{":

echo "$product_number\{$product_version}"; 
+1

L'avez-vous essayé? – codaddict

+0

Oui, je l'ai fait. Je suppose que le problème était d'éviter l'utilisation de "{}" comme éléments de regroupement dans l'expression. "{$ product_version}" semble donner le même résultat que "$ {product_version}", ce qui correspond au contenu de $ product_version. – pascal