Types, chaînes et conditions
Ce que tu vas apprendre
- Reconnaître les types de base : texte, nombres, booléens et
null. - Assembler et transformer des chaînes de caractères.
- Choisir entre deux chemins avec
if,elseetmatch.
Les types de base
Chaque valeur a un type, qui dit de quelle nature elle est. Voici les quatre que tu croiseras tout de suite.
<?php
$titre = "Gratin dauphinois"; // string : du texte
$duree = 75; // int : un entier
$note = 4.5; // float : un nombre à virgule
$vegetarien = true; // bool : vrai ou faux
$photo = null; // null : aucune valeur
| Type | Contenu | Exemple |
|---|---|---|
string | du texte | "Tarte" |
int | un nombre entier | 45 |
float | un nombre à virgule (point, pas virgule) | 4.5 |
bool | true ou false | true |
null | l'absence de valeur | null |
PHP devine le type tout seul à partir de la valeur. Pour le connaître, utilise var_dump, qui affiche le type et le contenu :
<?php
var_dump($duree); // int(75)
var_dump($note); // float(4.5)
Les chaînes de caractères
Une chaîne est un morceau de texte entre guillemets. Les guillemets simples et doubles ne se comportent pas pareil.
<?php
$nom = "Léa";
echo "Bonjour $nom"; // Bonjour Léa
echo 'Bonjour $nom'; // Bonjour $nom
Entre guillemets doubles, PHP remplace les variables. Entre guillemets simples, le texte reste tel quel.
Pour coller deux textes, on utilise le point, appelé concaténation :
<?php
$prenom = "Léa";
$message = "Bonjour " . $prenom . " !";
echo $message; // Bonjour Léa !
Quelques fonctions sur les chaînes
Une fonction est une action déjà écrite que tu appelles par son nom, avec des valeurs entre parenthèses.
<?php
$titre = "Tarte aux pommes";
echo strlen($titre); // 16 : le nombre de caractères
echo strtoupper($titre); // TARTE AUX POMMES
echo str_replace("pommes", "poires", $titre); // Tarte aux poires
echo str_contains($titre, "pommes"); // 1 (vrai)
Attention aux accents : strlen("é") compte des octets, pas des lettres. Pour un texte français, préfère les versions multi-octets comme mb_strlen et mb_strtoupper.
echo affiche true comme 1 et false comme une chaîne vide. Pour voir la vraie valeur, utilise var_dump.Comparer des valeurs
Une comparaison produit un booléen. Les opérateurs à connaître :
| Opérateur | Sens |
|---|---|
=== | égal, même valeur et même type |
!== | différent |
< > <= >= | plus petit, plus grand |
&& | et |
|| | ou |
! | non |
Utilise === plutôt que ==. La version à deux signes convertit les types avant de comparer, ce qui donne parfois des résultats surprenants.
Choisir avec if
Une condition exécute du code seulement si une expression est vraie.
<?php
$duree = 75;
if ($duree <= 30) {
echo "Recette rapide";
} elseif ($duree <= 60) {
echo "Recette moyenne";
} else {
echo "Recette longue";
}
PHP teste les conditions dans l'ordre et s'arrête à la première vraie. Le bloc else couvre tous les autres cas.
match : un choix selon une valeur
Quand tu compares une même valeur à plusieurs possibilités, match est plus lisible qu'une suite de if.
<?php
$categorie = "dessert";
$libelle = match ($categorie) {
"entree" => "Pour commencer",
"plat" => "Le plat principal",
"dessert" => "Pour finir en douceur",
default => "Catégorie inconnue",
};
echo $libelle;
match renvoie une valeur, compare avec === et lève une erreur si aucun cas ne correspond et qu'il n'y a pas de default. Il existe depuis PHP 8.0.
Valeur par défaut avec ??
L'opérateur ?? donne une valeur de secours quand une variable est absente ou vaut null.
<?php
$photo = null;
echo $photo ?? "image-par-defaut.jpg"; // image-par-defaut.jpg
Tu le réutiliseras beaucoup avec les formulaires.
var_dump($variable); juste après sa création. C'est le premier outil de débogage de tout développeur PHP.À retenir
- Une valeur a un type :
string,int,float,boolounull. - Les guillemets doubles remplacent les variables, les simples non ; le point colle deux chaînes.
- Pour le texte accentué, utilise les fonctions
mb_(mb_strlen,mb_strtoupper). - Compare avec
===pour éviter les conversions de type surprenantes. if,elseifetelsechoisissent un chemin ;matchassocie une valeur à un résultat.??fournit une valeur par défaut quand la variable est absente ounull.
Pour aller plus loin
Sources officielles
Ensuite
Premiers pas en PHP
Comprendre ce que fait un langage serveur, lancer le serveur intégré de PHP et afficher ta première page avec des variables.
Boucles et tableaux
Ranger plusieurs valeurs dans un tableau, y compris associatif, et les parcourir avec foreach, for et while.
- Projet
- Lignes de code
- Niveau
- Sous-sol
- Appartement
- PHP
- Pièce
- 2/7
- Plan n°
- php/02.types-et-chaines