Partie 11 — Chaînes de caractères : texte, concaténation, nettoyage
Dans presque toutes les applications PHP, vous allez manipuler du texte.
Que ce soit pour :
- Afficher un message
- Traiter un formulaire
- Générer un titre
- Créer une URL
- Nettoyer une entrée utilisateur
Les chaînes de caractères (strings) sont donc un pilier fondamental du langage PHP.
Dans cette partie, vous allez apprendre :
- Comment fonctionne le texte en PHP
- Concaténer correctement des chaînes
- Utiliser les principales fonctions sur les strings
- Nettoyer et sécuriser le texte utilisateur
- Des cas réels utilisés dans les projets professionnels
1. Qu’est-ce qu’une chaîne de caractères en PHP ?
Une chaîne de caractères est une suite de caractères :
- Lettres
- Chiffres
- Espaces
- Symboles
En PHP, une chaîne est définie à l’aide de guillemets simples ou doubles.
Exemple simple
<?php $message = "Bonjour le monde"; echo $message; ?>
2. Guillemets simples vs guillemets doubles
PHP propose deux types de guillemets :
- " " guillemets doubles
- ' ' guillemets simples
Différence essentielle
Les guillemets doubles interprètent les variables, les simples non.
Exemple
<?php $nom = "Ali"; echo "Bonjour $nom"; echo 'Bonjour $nom'; ?>
Résultat :
Bonjour Ali Bonjour $nom
👉 Bonne pratique : utiliser les guillemets doubles quand il y a des variables.
3. Concaténation : assembler du texte
La concaténation permet d’assembler plusieurs chaînes de caractères.
En PHP, on utilise le point ..
Exemple basique
<?php $prenom = "Sara"; $age = 25; echo "Je m'appelle " . $prenom . " et j'ai " . $age . " ans"; ?>
4. Concaténation avancée (opérateur .=)
PHP propose un opérateur de concaténation raccourci :
.=
Exemple
<?php $message = "Bonjour"; $message .= " tout le monde"; echo $message; ?>
👉 Très utile pour construire des textes dynamiques.
5. Fonctions essentielles sur les chaînes
PHP propose de nombreuses fonctions pour manipuler le texte.
strlen() — longueur d’une chaîne
echo strlen("PHP");
strtolower() / strtoupper()
echo strtoupper("php");
echo strtolower("PHP");
ucfirst() / ucwords()
echo ucfirst("bonjour");
echo ucwords("bonjour le monde");
6. Rechercher dans une chaîne
Rechercher du texte est très courant :
- Vérifier un email
- Analyser une URL
- Filtrer un mot
strpos()
<?php
$email = "test@gmail.com";
if (strpos($email, "@") !== false) {
echo "Email valide";
}
?>
⚠️ Toujours utiliser !== false
7. Découper et modifier une chaîne
substr()
echo substr("Programmation PHP", 0, 13);
str_replace()
echo str_replace("PHP", "JavaScript", "Programmation PHP");
8. Nettoyage du texte utilisateur (sécurité)
Les données venant des utilisateurs ne doivent jamais être affichées telles quelles.
Pourquoi ?
- Failles XSS
- Code HTML injecté
- Scripts malveillants
htmlspecialchars()
<?php
$commentaire = "<script>alert('hack')</script>";
echo htmlspecialchars($commentaire);
?>
👉 Fonction indispensable pour la sécurité.
9. Nettoyage des espaces (trim)
trim(), ltrim(), rtrim()
$nom = " Ali "; echo trim($nom);
👉 Très utilisé avec les formulaires.
10. Cas réel : traitement d’un formulaire
<?php $nom = trim($_POST["nom"]); $nom = htmlspecialchars($nom); echo "Bonjour " . $nom; ?>
👉 Exemple typique utilisé dans les projets PHP.
11. Erreurs fréquentes des débutants
- Oublier htmlspecialchars()
- Concaténer sans espace
- Confondre guillemets simples et doubles
- Ne pas nettoyer les données utilisateur
12. Mini-exercices pratiques
- Concaténer prénom et nom
- Nettoyer une chaîne venant d’un formulaire
- Créer un message dynamique
- Vérifier un email avec strpos()
Conclusion
Les chaînes de caractères sont partout en PHP.
En maîtrisant :
- La concaténation
- Les fonctions string
- Le nettoyage du texte
Vous écrivez un code plus propre, plus sûr et plus professionnel.
Dans la prochaine partie, nous verrons comment interagir réellement avec l’utilisateur grâce aux formulaires PHP (GET & POST).