SommaireTelecharger la documentationChapitre suivantChapitre precedent  

 
Raccourci :  
Les types

Introduction
Booléens
Conversion en booléen
Entiers
Dépassement de capacité des entiers
Conversion en entiers
Depuis un booléen
Depuis un nombre à virgule flottante
From strings
Conversion d'autres types

Les nombres à virgule flottante
Les chaînes de caractères
Syntax
guillemets simples
Guillemets doubles
Syntaxe Heredoc
Traitement des variables dans les chaînes
Syntaxe simple
Syntaxe complexe
Accès aux caractères d'une chaîne
Fonctions et opérateurs pratiques
Conversion de type
Les tableaux
Syntaxe
Créer un tableau array()
Omettre des clés
La syntaxe à crochets
Fonctions pratiques
Exemples
Attention aux tableaux
Pourquoi est ce que $foo[bar] est invalide?
Alors, pourquoi est-ce mal?

Les objets
Initialisation d'un objet
Ressources
Libérer des ressources
La valeur NULL
Syntaxe
Définition du type
Transtypage

7.9.5.1. Syntaxe Heredoc
[Notes en ligne] 

Un autre moyen de délimiter les chaînes est d'utiliser la syntaxe de "Here doc" (en français, documentation ici): <<<, suivi d'un identifiant arbitraire, puis de la chaîne. Cette séquence se termine par l'identifiant initial, placé en premier sur une nouvelle ligne.
L'identifiant utilisé doit suivre les mêmes règles que les étiquettes PHP : il ne doit contenir uniquement que des caractères alpha-numériques, et des soulignés ("_"), et enfin, commencer par un caractère alphabétique ou un souligné.
Il est très important de noter que la ligne qui contient l'identifiant de fermeture ne doit contenir aucun autre caractère, hormis, éventuellement, un point-virgule ;. Cela signifie notamment que l'identifiant ne doit pas être indenté, et qu'il n'y a aucun caractère blanc entre le retour à la ligne et l'identifiant, ou bien entre l'identifiant et le ;.
Le plus dur est peut être qu'il ne faut pas qu'il y ait un retour à la ligne ((\r) à la fin de cette ligne, mais seulement un form-feed (\n). Puisque Microsoft Windows utilise la séquence \r\n comme terminaison de ligne, la syntaxe heredoc risque de ne pas fonctionner là. Cependant, la plupart des éditeurs PHP fournissent une sauvegarde au format UNIX.
La syntaxe Here doc se comporte exactement comme une chaîne à guillemets doubles, sans les guillemets doubles. Cela signifie que vous n'avez pas à échapper les guillemets (simples ou doubles) dans cette syntaxe. Les variables sont remplacées par leur valeur, et le même soin doit leur être apporté que dans les chaînes à guillemets doubles.
Exemple de chaîne HereDoc

<?php
  $str = <<<EOD
  Exemple de chaîne
  s'étalant sur
  plusieurs lignes
  avec la syntaxe heredoc
EOD;
/* Exemple plus complexe, avec des variables. */
  class foo {
    var $foo;
    var $bar;
    function foo() {
        $this->foo = 'Foo';
        $this->bar = array('Bar1', 'Bar2', 'Bar3');
    }
  }
  $foo = new foo();
  $name = 'MonNom';
  echo <<<EOT
  Mon nom est "$name". J'affiche des $foo->foo.
  Maintenant, j'affiche un {$foo->bar[1]}.
  Ceci se traduit par un 'A' majuscule: \x41
EOT;
?>
     



Note : Le support Here doc a été ajouté en PHP 4.


Chapitre précédentChapitre suivantAccueil nexen.net