II. Exemples de scripts (mise en jambe)▲
II-A. Exécution des scripts d’exemple▲
Dans mes exemples, le logiciel serveur utilisé est Zend Core ; le chemin local de DOCUMENT_ROOT est : « C:\Web\online\http ».
PHP permet d’exécuter des scripts de deux manières principales : en tant que code incrusté dans une page Web ou bien comme un script système. Je vous recommande pour commencer d’utiliser les lignes de commande (MS-DOS, shell, etc.) pour lancer vos premiers scripts, car cela vous évite d’avoir à installer Apache httpd, c’est donc a priori plus simple.
Pour exécuter un script PHP depuis les lignes de commande, il faut invoquer le binaire « php » en lui donnant en paramètre le nom du script.
cd "C:\Program Files\Zend\Core\bin"
php "C:\Web\online\http\tests\error.php"
Si vous avez déjà un serveur Web configuré avec PHP, par exemple en ayant installé l’un des outils « tout-en-un » mentionnés auparavant, alors vous pouvez charger l’URL suivante dans votre navigateur : http://localhost/tests/error.php en supposant que votre script se situe ici : {DOCUMENT_ROOT}/tests/error.php
Pour afficher le contenu des variables, j’utiliserai principalement les fonctions echo et print_r(). S’il s’agit de contenus complexes (tableaux ou objets), en lignes de commandes l’affichage ne posera pas de problème ; en revanche, dans une page Web vous pourriez avoir des surprises, il vous faudra donc utiliser la balise HTML <pre> pour forcer la mise en page fixe.
<?php
print_r(array
('début'
,
'milieu'
,
'fin'
));
?>
II-B. Affichage▲
Commençons par un exemple, cela nous permettra de nous immerger plus facilement dans la théorie.
<?php
echo "Hello world!"
;
?>
Vous pouvez voir certaines similitudes avec le HTML, par exemple l’utilisation d’une balise de début « <?php » et d’une balise de fin « ?> ». Toute portion de code PHP doit donc être placée entre une balise d’ouverture et une balise de fermeture.
Si votre code n’est pas correctement écrit, PHP arrête l’exécution du script en lançant une erreur :
2.
3.
<?php
echo;
?>
Parse error: syntax error, unexpected ';' in C:\Web\online\http\tests\error.php on line 2
L’erreur donne de très nombreuses informations permettant de résoudre le problème. Ici par exemple, on nous informe qu’une erreur de syntaxe se trouve près d’un point virgule, et que ce point virgule n’est pas ce qui était attendu. En effet, « echo » sert à afficher quelque chose, il manque donc le nombre ou le texte à afficher.
Si vous regardez dans le fichier de log de votre serveur Web, vous remarquerez sans doute que cette erreur s’y trouve également :
Sun Nov 25 17:21:08 2007] [error] [client 127.0.0.1] PHP Parse error: syntax error, unexpected ';' in C:\\Web\\online\\http\\tests\\error.php on line 3, referer: http://localhost/tests/
Nous reviendrons plus tard sur ces détails, mais il est important de savoir dès à présent que les erreurs du code sont faciles à retrouver. Votre éditeur de code peut lui aussi (sans doute) vous aider à ce sujet.
L’affichage n’est pas ce qui fait l’intérêt d’un langage de script par rapport au HTML standard, néanmoins c’est un aspect essentiel. PHP permet d’afficher à l’aide des mots clefs « echo » ou bien « print », selon le choix du développeur.
II-C. Boucles▲
Les boucles sont l’un des attraits des langages de script, car c’est quelque chose que le HTML ne peut pas faire.
<?php
for
($i
=
0
;
$i
<
1000
;
++
$i
)
{
echo $i
;
}
Il suffit de mettre n’importe quelle suite d’actions à la place du « echo $i ». L’une des applications classiques d’une boucle est d’afficher certains éléments extraits d’une base de données.