Manuel PHP
Précédent |  | Suivant

# Chapitre 11. Les structures de contrôle

Tous les scripts `PHP` sont une suite d'instructions. Une instruction peut être une assignation, un appel de fonction, une instruction conditionnelle ou bien une instruction qui ne fait rien (une instruction vide). Une instruction se termine habituellement par un point virgule (";"). De plus, plusieurs instructions peuvent être regroupées en bloc, délimité par des accolades ("`{}`"). Un bloc est considéré comme une instruction. Les différents types d'instruction sont décrits dans ce chapitre.

# `if`

L'instruction `if` est une des plus importantes instructions de tous les langages, `PHP` inclus. Elle permet l'exécution conditionnelle d'une partie de code. Les fonctionnalités de l'instruction `if` sont les mêmes en `PHP` qu'en C :

Exemple 11-1. Instruction if ()

`<?php if (expression) commandes ?>`

Comme nous l'avons vu dans le paragraphe consacré aux expressions, `expr` est convertie en sa valeur booléenne. Si l'expression `expr` vaut `TRUE`, `PHP` exécutera l'instruction et si elle vaut `FALSE`, l'instruction sera ignorée. Plus de détails sur les valeurs qui valent `FALSE` sont disponibles dans la section Conversion en booléen.

L'exemple suivant affiche la phrase `a est plus grand que b` si `$a` est plus grand que `$b`:

Exemple 11-2. Instruction if () (2)

`<?php if ($a > $b) print "a est plus grand que b"; ?>`

Souvent, vous voulez que plusieurs instructions soient exécutées après un branchement conditionnel. Bien évidemment, il n'est pas obligatoire de répéter l'instruction conditionnelle autant de fois que vous avez d'instructions à exécuter. A la place, vous pouvez rassembler toutes les instructions dans un bloc. L'exemple suivant affiche `a est plus grand que b`, et assigne la valeur de la variable `$a` à la variable `$b`:

Exemple 11-3. Instruction if () et bloc

`<?php if ($a > $b) { print "a est plus grand que b"; $b = $a; } ?>`

Vous pouvez imbriquer indéfiniment des instructions `if` les unes dans les autres, ce qui permet une grande flexibilité dans l'exécution d'une partie de code suivant un grand nombre de conditions.

Précédent | Sommaire | Suivant
Opérateur de type | Niveau supérieur | `else`