Vous êtes ici Articles > NOWDOC + double quotes = HEREDOC

 

NOWDOC + double quotes = HEREDOC

Du coté PHP
 
Phpsources
Vu 7694 fois
Enregistré le 14 Avril 2008
  • Digg cet article sur digg.com
  • Bookmark cet article sur del.icio.us
  • Bookmark cet article sur Google
  • Bookmark cet article sur Yahoo
  • Ajoute NOWDOC + double quotes = HEREDOC
  • Partage cet article sur Facebook
 
 
 
 

NOWDOC + double quotes = HEREDOC


PHP 5.3 introduit une nouvelle syntaxe: NOWDOC. Si vous connaissez HEREDOC qui est un des moyens pour délimiter une chaine, vous devriez apprécier NOWDOC. Ces délimitateurs se comporte idem qu'une chaîne à guillemets doubles, mais sans les guillemets doubles.
Si vous connaissez HEREDOC (en français cela veut dire: documentation ici: <<<, est suivi d'un identifiant arbitraire, puis de la chaîne, puis l'identifiant initial pour terminer la séquence..) alors il vous sera facile de comprendre NOWDOC. Avec HEREDOC les variables sont interprétés, avec NOWDOC elles ne le sont pas. Voici des exemples:
.01
.02
.03
.04
.05
.06
.07
.08
.09
 
<?php

$value "Hello World!";
$var = <<<LABEL
$value
LABEL;

?>


$var contient Hello World!


.01
.02
.03
.04
.05
.06
.07
.08
.09
 
<?php

$value "Hello World!";
$var = <<<'LABEL'
$value
LABEL;

?>


$value n'est pas interprété, donc $var contient literralement "$value".
Par souci de cohérence et d'exhaustivité, une syntaxe alternative a été introduite:


.01
.02
.03
.04
.05
.06
.07
.08
.09
 
<?php

$value "Hello World!";
$var = <<<"LABEL"
$value
LABEL;

?>

$value sera maintenant interprété ;)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Quelques articles qui devraient vous intéresser