FriconiX
Des milliers de pictogrammes gratuits dessinés avec amour !

Cours 3.6. Les guillemets en PHP

La déclaration des chaînes de caractères est encadrée par des guillemets. Le PHP accepte deux syntaxes, les guillemets simples (') et les guillemets doubles ("). Toutefois, ces deux syntaxes ne sont pas identiques.

Les guillemets simples

L'utilisation des guillemets simples est la syntaxe élémentaire pour déclarer une chaîne. Mais attention, la chaîne sera enregistrée telle quelle, c'est à dire que les caractères spéciaux (comme le retour chariot \n) ne seront pas échappés (interprétés) et seront composés de deux caractères : un antislash \ suivi du caractère n.

Le seul caractère qui peut être échappé est l'apostrophe avec la syntaxe \'.

Les guillemets doubles

Les guillemets doubles permettent l'échappement des caractères spéciaux et surtout l'interprétation des variables. Si une variable est présente dans la chaîne de caractères, elle sera remplacée par sa valeur. De même, si des caractères spéciaux (\n , \r , \$, ...) sont présents dans la chaîne, ils seront remplacés par leur code ASCII.

Notons que les tableaux peuvent être parsé directement lorsqu'il sont entre guillemets double, mais ils doivent être échappés grâce à des accolade comme sur l'exemple suivant.

Exemple

Cet exemple montre les différences entre les deux syntaxes :

<?php
$variable = 4;
$table = array (10,20,30);

// Display $variable (single quotes)
echo 'Variable: $variable\n';

// Display 4 (double quotes)
echo "Variable: $variable\n";

// Display 20 (table with double quotes and curly brackets)
echo "Table: {$table[1]}\n";
?>

Remarquez comment le premier retour chariot est affiché : il n'est pas échappé.

Guillemets simples ou doubles ?

La question du choix d'une syntaxe se pose. La règle que je préconise est d'utiliser au maximum les guillemets simples car les guillemets doubles sont plus longs à analyser à cause de l'interprétation des variables et des caractères spéciaux.

Exercice

Considérons le code suivant qui déclare une variable $a. Le but de cet exercice est d'afficher la valeur de $a de différentes façons :

<pre>
<?php
$a = 1234.56;

// Display a=1234.56 using single quotes

// Display a=1234.56 using double quotes

?>

<!-- Display a=1324.56 outside PHP script -->

</pre>

Voici le résultat escompté :

Expected result for the PHP quote exercice

Voir aussi


Dernière mise à jour : 17/01/2020