PHP3 est un langage interprété orienté Web. Syntaxiquement, c'est un mélange de C et de Perl. Les scripts PHP3 sont lus et interprétés par le moteur PHP3.
Il comporte au total plus de 500 fonctions. Il est fournit avec des librairies offrant des fonctionnalités diverses : accès aux bases de données, fonctions d'images, sockets, protocoles internet divers...
Les bases du PHP reposent sur le langage C. Tout le monde n'a pas eu la chance d'étudier le C pendant ses études, nous allons donc passer en revue les principales caractéristiques de base du PHP.
NB : Vu la somme importante de points à traiter, ce tutoriel s'améliorera au fil du temps.
Dans la suite de ce tutoriel, nous allons utiliser des structures qui peuvent regrouper plusieurs instruction et donc former un bloc. Pour délimiter le début et la fin d'un bloc, on utilise des accolades { et }. Il est cependant inutile de mettre les accolades lorsque notre structure contient une seule instruction. Il existe aussi une autre forme d'écriture, dont on ne parlera pas pour l'instant, puisque elle s'avère très peu utilisée.
L'instruction if est la structure de test la plus basique. Elle permet d'exécuter une suite d'instructions en fonction d'une condition.
if($temps == \"ensoleillé\") { echo\"Il fait beau\"; }
Quelques remarques :
On peut également spécifier une suite d'instructions à exécuter lorsque la condition n'est pas réalisée, avec l'instruction else .
if($temps == \"ensoleillé\") { echo\"Il fait beau\"; }else{ echo\"Il ne fait pas beau\"; }
Enfin, il est possible d'enchaîner une série d'instructions if (sans avoir besoin de les imbriquer) à l'aide de l'instruction elseif.
if($nombre > 1) { echo\"\$nombre est supérieur à 1\"; }elseif($nombre < 1){ echo\"\$nombre est inférieur à 1\"; }else{ echo\"\$nombre est égal à 1\"; }
Cette instruction est uniquement une simplification de l'écriture if ... else ...
echo($nombre == 1) ? \"\$nombre est égal à 1\" : \"\$nombre n'est pas égal à 1\";
La condition doit obligatoirement se trouver entre parenthèses. Si la condition est vérifiée, la valeur de gauche est retournée, sinon, c'est celle de droite.
Cette instruction permet de faire plusieurs tests sur la valeur d'une variable, ce qui évite de faire plusieurs if imbriqués et simplifie ainsi la lecture du code.
switch($nombre) { case1: echo\"\$nombre est égal à 1\"; break; case2: echo\"\$nombre est égal à 2\"; break; case3: echo\"\$nombre est égal à 3\"; break; default: echo\"\$nombre est inférieur à 1 ou supérieur à 3\"; break; }
Les parenthèses qui suivent le mot clé switch indiquent une expression dont la valeur est testée successivement par chacun des case. Lorsque la valeur correspond, la suite d'instructions est exécutée. Le mot clé break indique la sortie du switch. Si aucune valeur ne correspond, les instructions contenues dans la partie default sont alors exécutées.
Les boucles sont des structures qui permettent d'exécuter plusieurs fois une même série d'instructions en fonction d'une ou de plusieurs conditions.
Cette instruction est souvent utilisée puisque son utilisation s'avère assez simple.
for (compteur; condition; compteur) { //liste d'instructions }
Voici un exemple, pour afficher tous les chiffres de 1 à 10.
for($i = 1; $i <= 10 ; $i++ ) { echo$i . ' '; }
C'est l'instruction que je préfère. Elle s'avère un peu plus rapide que for et est surtout plus souple d'utilisation. Par contre, il est plus facile d'oublier d'incrémenter notre compteur et de faire une boucle infinie. Il faut donc l'utiliser avec précaution !
La syntaxe est différente :
while ( condition ) { //liste d'instructions }
Ce qui donne pour l'exemple précédent :
$i = 1; while($i <= 10) { echo$i . ' '; $i++; }
Cette instruction, introduite avec PHP4, permet de passer facilement en revue un tableau.
foreach ( tableau as [clef =>] valeur)
{
liste d'instructions
}
NB : La partie clef (entre [ et ]) est optionnelle.
Exemple :
foreach(range(1, 10)as$i) // range(1, 10) équivaut à array(1, 2, 3..., 10) { echo$i . ' '; }
Comme vous l'avez deviné, la fonction range permet de créer un tableau contenant un intervalle de valeurs.