PHP – Fonctionnement
Inclusion du code
Un script PHP n’est rien d’autre que du code écrit dans un fichier texte. Aucune compilation n’est necessaire,
puisque ce langage est interprété (donc plus lent que les JSP).
Si vous avez definit dans le fichier httpd.conf que les extensions des scripts PHP sont .php,
alors vos scripts PHP doivent obligatoirement se trouver dans des fichiers ayant pour extension .php
si vous voulez que ceux-ci soit normalement interprétés.
Mais ce n’est pas tout. Le code doit se trouver au sein de balises HTML spéciales pour pouvoir être analysé
par l’interpreteur. Suivant la configuration du fichier php.ini, vous pourez utilisez l’une des
syntaxes suivantes :
<?php [Mon code PHP] ?> <? [Mon code PHP] ?> <SCRIPT language="PHP"> [Mon code PHP] </SCRIPT> <% [Mon code PHP] %>
La syntaxe la plus utilisée est la première (<?php et ?>), car elle permet
d’assurer une portabilité excellente du code lors d’un changement de version du PHP.
Un des avantages majeures qu’a le PHP face aux CGI écrits en C ou en Perl, c’est que celui-ci peut être directement inclus
dans un document HTML!
Ainsi, il est tout à fait courant de rencontrer des scripts PHP ayant la structure suivante :
<!-- Nom du fichier 'index.php' --> <HTML> <HEAD> <TITLE>Bienvenue sur le site de Titou la Bibine</TITLE> </HEAD> <BODY> <H2 align="center">Bienvenue sur le site de Titou la Bibine
</H2> <?php print "Vous êtes notre 50000 visiteurs"; ?> </BODY> </HTML>
Lorsque un client, c’est à dire un internaute, va vouloir consulter la page ci-dessus nommée index.php,
le serveur Apache va s’apercevoir que l’extension du fichier est .php.
Il va alors envoyer le document à l’analyseur PHP, qui va interpréter toutes les lignes de codes situées dans
les balises adequates (c’est à dire entre <?php et ?>). Dans notre cas, le
script va tout simplement écrire la phrase Vous êtes notre 50000 visiteurs dans le document.
Une fois toutes ces opérations effectuées, Apache va transmettre le document au client (ouf! parce que ça faisait
un bon moment qu'il attendait ce client
).
Ensuite, si le client s'amuse à analyser le code HTML, voici ce qu'il va découvrir :
<!-- Nom du fichier 'index.php' --> <HTML> <HEAD> <TITLE>Bienvenue sur le site de Titou la Bibine</TITLE> </HEAD> <BODY> <H2 align="center">Bienvenue sur le site de Titou la Bibine
</H2> Vous êtes notre 50000 visiteurs </BODY> </HTML>
On constate que le code PHP est inacessible au client, ce qui fait que rien ne permet au client de savoir
que la page qu'il lit est en fait un script PHP, si ce n'est l'extension .php du document.