1.Introduction

1.1.PHP? C'est quoi? A quoi ça sert?

PHP est un langage de programmation. Il est adapté à la réalisation de scripts (lancés en ligne de commande, en tâche de fond ou autre) mais doit surtout sa notoriété à la facilité qu'il apporte à la mise en place de sites web.
PHP est un langage interprété. Il n'y a pas besoin de compiler (ni déployer) le code avant de pouvoir l'exécuter. Il est donc particulièrement simple à mettre en oeuvre une fois l'interpreteur installé.
PHP peut générer un peu tout type de résultat. Il est donc possible de créer tout type de document texte comme des pages HTML, JS, CSS, XML, texte brut, etc. mais aussi tout type de document binaire comme des images JPEG, PNG, etc. des documents PDF, des fichiers ZIP, etc.
PHP peut s'interfacer avec de nombreuses applications. Il est donc possible d'interroger et d'écrire dans de nombreux types de bases de données (MySQL, PostreSQL, Oracle, SQLite, etc.), des serveurs LDAP, etc. Il est possible d'envoyer des mails, etc.

1.1.PHP pour internet

Cela peut paraître évident à notre époque mais il faut bien garder à l'esprit qu'à l'origine le web était uniquement composé de pages statiques écrites simplement en HTML. On entend par pages statiques des pages qui ne changent pas tant que personne ne vient en modifier le code. Dans ces conditions, il était, par exemple, impossible au site internet de retourner un résultat de recherche basé sur une requête soumise par un visiteur (impossible de consulter une base de données, impossible d'envoyer un mail, etc.).
Les serveurs hébergeant les sites internet ont dû évoluer pour offrir plus de souplesse. Pour cela, ils ont intégré la possibilité d'exécuter des scripts et de retourner le résultat (en d'autres termes d'afficher le résultat dans le navigateur de l'utilisateur). On parle alors de page web dynamique. Cela s'est d'abord fait via un protocole CGI puis par des modules que chacun à pu développer.
C'est dans ce contexte que le langage de script PHP est né (lui aussi dans une forme CGI et maintenant sous forme de module qui vient s'intégrer au serveur web que ce soit Apache, IIS ou autre).

1.2.Principe de fonctionnement

Avant de commencer à coder en PHP, regardons de plus près le principe de fonctionnement qui a été évoqué précédemment. Il faut garder à l'esprit que lorsque vous tapez une URL (adresse de site internet) depuis votre navigateur (appelé client) vous demandez en fait à un serveur (un logiciel tournant généralement sur une machine distante) de vous retourner une page. S'il s'agit d'un page HTML (ou tout document statique comme une image) alors cette page sera retournée telle quelle (telle qu'elle a été écrite par le "programmeur" ou le "web designer"). Dans le cas d'une page PHP, cela est un poil plus complexe. Comme l'explique le schéma suivant:
Quand un script PHP est appelé, il passe par le serveur Web (ici Apache). Si l'extension du fichier correspond à ce que l'on a défini comme étant l'extension PHP (généralement .php voire .php5, .php4 ...), le serveur demande à l'interpréteur PHP d'exécuter le code PHP contenu dans le fichier. L'exécution de ce code PHP entrainera éventuellement un échange d'informations avec la base de données (ou d'autres systèmes). Au final, c'est (généralement) une page HTML (avec éventuellement du Javascript, des appels à des applets Java... enfin tout ce que les navigateurs peuvent comprendre) qui est retourné par le script PHP et renvoyé au serveur web (Apache). Le résultat est émis vers le navigateur. FIN du parcours.

1.3.Comment tester ?

1.3.1.Un script PHP en ligne de commande

Pour tester un bout de script PHP en ligne de commande, vous devrez installer un interprêteur PHP puis lancer la commande "php <nom du script php>". Autrement dit taper "php" suivi du nom du script PHP. Vous verrez alors apparaître dans la console le résultat du script PHP (si ce dernier affiche quelque chose).

1.3.2.Une page Web PHP

Du paragraphe précédent, vous avez normalement déduit que vous ne pouvez pas lire un fichier PHP (avec une extension du type .php) aussi simplement que vous pouvez le faire avec un fichier HTML. En effet, utiliser l'option "ouvrir fichier" de votre navigateur (ou cliquer-glisser le script dans votre navigateur) ne suffira pas à en afficher le résultat. Tout comme pour un script en ligne de commande, il faut un interprêteur PHP. Cette fois-ci, en revanche, il doit être intégré au serveur web. Et vous devez obligatoirement solliciter cet interprêteur pour en obtenir le résultat. Pour cela, il faut appeler l'URL du script sur le serveur web.
Pour disposer d'un serveur web, vous avez 2 grandes options:
  • Soit en passant par le serveur web de votre hébergeur, ce qui ne nécessite aucun effort d'installation mais est très contraignant puisqu'il faut à chaque fois aller déposer les scripts à tester via FTP et ne vous permet pas toutes les configurations possibles.
  • Soit en installant un serveur web sur son propre ordinateur, ce qui est bien plus pratique pour tester et se familiariser avec le fonctionnement de PHP
Vous souhaitez en savoir plus? Suivez nous dans le chapitre suivant dédié à l'installation de l'interprêteur PHP