Chaîne de caractères

DéfinitionChaîne de caractères

Les chaînes de caractères doivent être placées entre guillemets simples ou doubles (‘ ou "), afin de les différencier des instructions du langage.

1
"je suis une chaîne"
2
"c'est une chaîne aussi"    // guillemet simple à l'intérieur de guillemets doubles
3
'je suis une "chaîne"'      // double à l'intérieur de simples
4

Pour afficher des guillemets simples à l'intérieur de guillemets simples ou des doubles à l'intérieur de doubles, il faut les antislasher (avec le caractère \). Il existe différents symboles utilisant le caractère \.

1
'c\'est une chaîne aussi'   // simple à l'intérieur de simples
2
"je suis une \"chaîne\""    // double à l'intérieur de doubles
3
"1ère ligne \n 2ième ligne" // \n : saut de ligne
4
"début \t plus loin"        // \t : tabulation

Attention, la tabulation et le saut de ligne sont effectifs dans le fichier HTML. Comme si vous les aviez écrits dans l'éditeur. Les tabulations et les sauts de ligne dans le navigateur n'apparaissent pas.

Pour faire un saut de ligne en HTML, vous devez ajouter <br /> dans votre chaîne de caractères.

DéfinitionConcaténation

On peut générer une chaîne de caractères à partir de la combinaison de variables, d'opérations et d'autres chaînes.

Pour combiner ces éléments, il faut les concaténer (les coller les uns à la suite des autres).

PHP utilise le point pour réaliser cette concaténation.

1
$texte = "L'année prochaine, j'aurai ";
2
$age = 25;
3
$phrase = $texte . ($age + 1) . 'ans.';
4
echo $phrase; // L'année prochaine, j'aurai 26ans.

Pensez à ajouter des espaces à la fin ou au début de certaines chaînes, pour que les informations soient séparées.

DéfinitionChaîne et variable

Les variables peuvent être intégrées directement à l'intérieure des guillemets doubles :

1
$texte = "L'année prochaine, j'aurai ";
2
$age = 25;
3
$age = $age + 1;
4
$phrase = "$texte {$age}ans";
5
echo $phrase; // L'année prochaine, j'aurai 26ans.

Pour juxtaposer du texte et une variable, il faut encadrer la variable d'accolades ({ })

Variables dynamiques

1
$a = "nom";
2
$$a = "Dupont";
3
echo "Mon nom est ${$a}"; // affiche : Mon nom est Dupont
4
echo "<br />";
5
echo "Mon nom est $nom";  // affiche : Mon nom est Dupont

Les variables dynamiques doivent utiliser les accolades à l'intérieur des guillemets doubles.

DéfinitionCaractère

On peut accéder à un caractère grâce à son rang à l'aide des crochets [ ].

Attention, cela ne fonctionne que si le texte ne contient que des lettres codées sur 1 octet. Par exemple les lettres accentuées sont codées sur 2 octets.

1
$texte = 'bonjour';
2
$caractere = $texte[3]; // contient la lettre j
3
echo "La quatrième lettre de bonjour est le $caractere"; // La quatrième lettre de bonjour est le j
4
echo "<br />";
5
echo "La quatrième lettre de bonjour est le $texte[3]"; // La quatrième lettre de bonjour est le j

Le premier caractère a pour rang 0.

Pour ne pas tenir compte de l'encodage, il faut utiliser une fonction.

mb_substr($texte, $rang, $nb) cette fonction retourne une sous-chaîne d'une chaîne :

  • $texte : le texte dans lequel on cherche la lettre

  • $rang : l'emplacement de la lettre. S'il est négatif, signifie que l'on commence par la fin.

  • $nb : le nombre de lettres attendu. 1 pour obtenir qu'une lettre.

1
$texte = 'Bonne année';
2
echo mb_substr($texte, 0, 1); // B
3
echo mb_substr($texte, -1, 1); // e
4
echo mb_substr($texte, -2, 1); // é
5
echo mb_substr($texte, 0, 3); // Bon
6
echo mb_substr($texte, -3, 2); // né
7

DéfinitionNombre de caractères

La fonction mb_strlen retourne le nombre de caractères d'une chaîne.

1
$nb = mb_strlen('bonjour');
2
echo "Le mot bonjour contient $nb lettres"; // Le mot bonjour contient 7 lettres