Cpm Affiliation : la régie publicitaire au Cpm

Des choses à savoir sur le PHP

Tout d'abord, qu'est-ce que le PHP ? Le PHP, ou Hypertext Preprocessor, est un langage de programmation. Il y en a beaucoup d'autres, comme le C, le Java, l'OCaml, etc., mais on peut dire du PHP que c'est un langage de programmation orienté pour le Web, ou encore pour les sites internet.
Pour la petite histoire, le PHP est né de la main de Rasmus Lerdorf en 1994. Au départ très basique, il s'est enrichi et a été repris par la suite.

Quand vous utilisez une application, sous Windows par exemple, vous double-cliquez sur le programme pour qu'il se lance ; le programme s'exécute alors chez le client, c'est-à-dire votre ordinateur. Pour le PHP, c'est un peu différent. En effet, votre ordinateur ne comprend pas le PHP, il ne sait pas l'interpréter. Pour que le PHP soit interprété, il faut que le fichier qui contient le code PHP passe par un serveur, local ou distant.

Rien que dans ces quelques phrases, il y a déjà des notions indispensables à connaître.

  • Le client : c'est votre ordinateur, ou celui de la personne qui visitera votre site web.
  • Le serveur : c'est une application qui interprétera le PHP (mais c'est loin d'être sa seule fonction) et qui enverra le résultat du code PHP dans un format compréhensible par votre ordinateur.
  • Local & distant : un serveur peut-être local ou distant. Un serveur local est un serveur installé sur votre ordinateur, vous pouvez donc l'utiliser sans avoir de connexion internet. Un serveur distant est un serveur installé sur un ordinateur qui n'est pas le vôtre et connecté à internet ; vous devez donc posséder une connexion internet pour dialoguer avec ce type de serveur.
  • Interprétation : phase où le code PHP sera lu par le serveur pour être traduit en quelque chose de compréhensible par un navigateur web.

Un mot est important dans cette dernière phrase, c'est dialoguer. Mettons de côté la différence entre serveur local et distant. Avez-vous une idée de ce qui se passe quand vous tapez une adresse dans votre navigateur internet et que vous validez ?
A priori, pas grand-chose. Vous vous contentez de taper une adresse, et une page apparaît. En réalité, il se passe plusieurs choses : il y a un véritable dialogue entre votre ordinateur et celui qui se cache derrière l'adresse que vous avez entrée.

Avant de parler de ce dialogue, vous devez connaître une autre notion : celle d'adresse IP. Internet est comparable à une immense toile d'araignée, chaque ordinateur est interconnecté avec une multitude d'autres ; un problème se pose alors : comment savoir qui est qui ?
Réponse : avec l'adresse IP.
Cette adresse est une sorte d'identifiant unique qui permet de reconnaître les ordinateurs. Cet identifiant se présente sous la forme de quatre nombres compris entre 0 et 255, séparés par un point.
Voici des exemples d'adresse IP : 156.234.76.1, 127.0.0.1, 192.168.1.1.
Les adresses IP sont attribuées par les fournisseurs d'accès internet (FAI) ; elles peuvent être dynamiques, ce qui veut dire qu'un même ordinateur se verra attribuer des IP différentes quand il se connectera et se déconnectera, ou fixes, ce qui veut dire que l'ordinateur se voit toujours attribuer la même.

INFO : Il est à noter que je ne parle ici que d'adresse IP version 4 : la version 6 existe aussi, elle diffère par son format, mais son rôle reste le même. Si ça vous intéresse, je vous invite à aller lire cet article sur Wikipédia.

Revenons à notre dialogue : vous tapez une adresse internet, que fait votre navigateur ?
La première chose qu'il va faire, c'est rechercher l'IP associée à cette adresse. En effet, si l'on devait retenir quelle IP correspond à quel site, ça serait vraiment lourd.
Pour obtenir cette IP, votre navigateur va passer par un serveur DNS (Domain Name Service, service de nom de domaine en français). Ces serveurs n'ont qu'un seul but : donner l'IP correspondant au nom de domaine qu'on lui donne. Bien sûr, vous vous demandez peut-être comment votre navigateur peut accéder à ce serveur DNS puisqu'il ne connaît pas son IP. Eh bien vous vous trompez, il connaît son IP, et pour cause, dans la plupart des cas, les serveurs DNS que vous utilisez sont chez votre fournisseur d'accès internet ! Pour le reste des cas, l'IP du serveur DNS est donnée par l'utilisateur, le navigateur la connaît donc également.
Une fois que le navigateur a obtenu l'IP, il va envoyer une requête à cette IP, et le serveur qui correspond à l'IP recevra ladite requête. Une fois la requête reçue par le serveur, ce dernier va l'analyser, faire ce que la requête demande et renvoyer le résultat au navigateur du client.

Après cette brève explication, qui peut me dire quand la page PHP sera interprétée ? Si vous avez bien lu le début, vous devriez pouvoir répondre dans la seconde qui suit.
Pour ceux qui l'ont deviné, le code PHP sera effectivement interprété par le serveur, après qu'il a reçu la requête du client. Une fois que le code PHP est interprété par le serveur, ce dernier envoie le résultat du code PHP au navigateur du client (souvent, le serveur renvoie une page (X)HTML, mais ce n'est pas obligatoire).
Cela implique quelque chose : une fois que la page est affichée chez le client, le PHP ne peut plus intervenir.
Parfois, il arrive qu'on demande comment faire une horloge qui affiche l'heure en temps réel sur un site web. Si vous avez compris la différence entre serveur et client, vous devez comprendre pourquoi le PHP ne peut pas réaliser cela. Pour afficher l'heure en temps réel, il faut qu'à chaque seconde, la page soit mise à jour. Or, le PHP ne peut pas intervenir, puisque la page a déjà été envoyée chez le client.
Pour réaliser ce genre de gadget qui demande du temps réel, il faut utiliser des langages qui s'exécutent chez le client, comme le JavaScript par exemple.

Voici un petit schéma qui résume la situation lorsque vous demandez une page PHP (j'ai retiré un ou deux détails inutiles) :

Des logiciels utiles

Faire du PHP, c'est bien. Seulement, ça serait vraiment contraignant de devoir posséder un serveur pour coder et tester ce code, non ?
Ce qui est bien, c'est que ce n'est pas indispensable. Vous pouvez installer les logiciels nécessaires pour utiliser votre code PHP sans devoir posséder de serveur distant. On parle alors de serveur local.
Il existe également des logiciels tout-en-un, qui vous installent tout ce dont vous avez besoin sans nécessiter d'installer 36 000 bidules. Il y en a plusieurs de ce type, je citerai par exemple WAMP, XAMPP, MAMP LAMP, EasyPHP, etc.
Si vous utilisez Windows, je vous conseille WAMP : il représente à mes yeux le meilleur compromis entre facilité d'utilisation et utilité.
Pour Linux et Mac, je ne saurai pas vous conseiller, n'ayant moi-même jamais codé en PHP avec ces systèmes d'exploitation.

Je ne vais pas détailler le fonctionnement de ces logiciels, il existe des tas de tutoriels qui ne demandent qu'à être visités pour répondre à vos questions. Et voilà l'occasion de placer une phrase qui reviendra souvent : apprenez à chercher par vous-mêmes.
Quoi que vous fassiez, que ce soit de la programmation, de la promotion de musique, de la recherche d'immobilier ou je ne sais quoi d'autre, vous devez absolument apprendre à chercher et à vous débrouiller par vous-mêmes. Si vous n'y arrivez pas, vous n'arriverez à rien en PHP. Je peux vous assurer qu'avec le PHP, vous aurez à faire des recherches. Si vous savez chercher par vous-mêmes, vous trouverez rapidement l'objet de votre désir, sinon vous devrez vous contenter d'augmenter le nombre de sujets inutiles dans les forums, et d'attendre bêtement qu'on vous réponde. Bien sûr, il arrive parfois que même en cherchant comme des fous, vous ne trouviez pas de réponse claire : dans ce genre de cas, il ne faut pas hésiter à demander à toute personne susceptible de vous aider. Mais ne négligez pas la phase de recherche. Vous verrez, au début vous perdrez un quart d'heure pour trouver ce qu'il vous faut, mais à force de le faire, vous attraperez des automatismes et vous trouverez en un clin d"œil. Rigolant

Maintenant que vous êtes parés pour interpréter du PHP, il faudrait bien en faire pour rentabiliser ces logiciels gratuits pour la plupart. Vous n'avez besoin de rien en particulier pour faire du PHP, le bloc-notes de Windows suffit amplement. Seulement, vous avouerez que c'est laid.
C'est pour ça que des gens ont créé des logiciels, des éditeurs de texte plus pratiques pour la programmation. L'une des fonctions les plus utiles de ces éditeurs est la coloration syntaxique, c'est-à-dire la coloration du code.
Voyons un exemple simple : voici deux codes identiques, mais l'un est coloré alors que l'autre ne l'est pas.

Code : Autre

$length = array();
$degrade = array();
preg_match_all('`(?:<span style="color: #([[:alnum:]]{6})">(.+?)</span> ){2,}`u', $str, $out);
print_r($out);
foreach($out[2] as $str)
{
    $l = strlen($str);
    if(isset($length[$l])) $length[$l]++; else $length[$l] = 1;
}

Code : PHP

<?php
$length = array(); $degrade = array();
preg_match_all('`(?:<span style="color: #([[:alnum:]]{6})">(.+?)</span> ){2,}`u', $str, $out);
print_r($out);
foreach($out[2] as $str)
{
    $l = strlen($str);
    if(isset($length[$l])) $length[$l]++; else $length[$l] = 1;
}
?>

N'essayez pas de comprendre ces codes, ils n'ont aucun intérêt pour le moment. La seule chose que vous pouvez remarquer, c'est que le second code est bien plus lisible. Les différents éléments du langage étant colorés différemment, il est beaucoup plus aisé de se retrouver dans le code, et cette coloration permet même d'y déceler des erreurs, que du bon !

Encore une fois, l'éditeur que vous choisirez dépendra de votre système d'exploitation.
Sous Windows, je conseille Notepad++, très simple d'emploi, assez léger mais possédant un bon nombre de fonctions utiles : c'est à mes yeux un bon logiciel.
Pour Linux et Mac, encore une fois je ne sais pas vous conseiller, mais rappelez-vous cette phrase : cherchez par vous-mêmes.
Après tout il faut bien trouver une utilité à Google, Yahoo et autres moteurs de recherche. Je suis sûr que si vous êtes sous Linux et que vous cherchez « Linux éditeur texte PHP », vous trouverez de quoi faire.

 

Infos Plan Partenaires
À propos Webmasters
C.G.U Services Gratuits Annuaire de sites web
Bannières Forum Ionoa

 

Aipoweb est un site édité par ASMOH NetWork  ©

Créer un site gratuit avec e-monsite - Signaler un contenu illicite sur ce site