2010-03-25 6 views
4

Je veux stocker un caractère $ dans une variable PHP.

$var = "pas$wd"; 

je reçois l'erreur suivante

Notice: Undefined variable: wd in C:\xxxxx on line x 

Aide.

Répondre

13

Vous pouvez utiliser des chaînes entre guillemets simples:

$var = 'pas$wd'; 

De cette façon, les variables ne seront pas interpolées.


Sinon, vous pouvez échapper le signe $, avec un \:

$var = "pas\$wd"; 


Et, pour le bien de complétude, avec PHP> = 5.3, vous pouvez également utiliser le Nowdoc (guillemets simples) syntaxe:

$var = <<<'STRING' 
pas$wd 
STRING; 


A titre de référence, voir the Strings page of the PHP manual(citant quelques phrases):

Note: [...] des variables et des séquences pour échapper à caractères spéciaux ne pas augmenté quand ils se produisent dans unique cité cordes.

Et:

Si la chaîne est enfermée dans guillemets doubles ("), PHP interpréter plus des séquences d'échappement pour caractères spéciaux:
\$: dollar signe

4

guillemets simples qui empêchent l'expansion:

var = 'pas$wd'; 
3

Les guillemets doubles permettent l'interpolation de variables. Donc, si vous utilisez des guillemets doubles, vous devez échapper à la $ sinon vous pouvez utiliser des guillemets simples qui ne font pas d'interpolation de variables.

$ var = "pas\$wd"; 

ou

$ var = 'pas$wd'; 
2
$var = 'pas$wd'; 
$var = "pas\$wd"; 
2
Use the following code 
$var='pass$wd' 
Questions connexes