Debutant php PHP 15 min de lecture

Texte de modèle vs. Code PHP

# Texte Modèle par rapport au Code PHP

Démarrer Votre Serveur Web PHP

Lorsque vous commencez avec PHP, il est important de comprendre comment visualiser votre code dans un navigateur web. Si votre fichier PHP ne s’appelle pas index.php, vous devrez spécifier son nom lors de son accès. Par exemple, si vous travaillez avec un fichier appelé hello.php, vous devrez naviguer vers localhost:8000/hello.php dans votre navigateur après avoir démarré le serveur web PHP avec la commande php -S localhost:8000.

Parfois, vous pourriez rencontrer une erreur indiquant que le port que vous essayez d'utiliser (généralement 8000) est déjà utilisé. Si cela se produit, essayez simplement un port alternatif comme 8001, 8080 ou 8888. Il est également judicieux d'examiner quelle application utilise déjà ce port – vous pourriez avoir un autre serveur web en cours d'exécution en arrière-plan. Bien que l'exécution de plusieurs serveurs web ne soit pas un problème en soi, il est généralement préférable de n'en tester qu'un à la fois pour s'assurer que vous voyez les réponses de l'application sur laquelle vous souhaitez travailler. Si vous avez systématiquement des conflits de port, vous pouvez retracer le processus à l'aide des outils de votre système d'exploitation et l'arrêter, ou redémarrer votre ordinateur.

Mélange de Structure et de Logique : Texte de Modèle et Code PHP

La popularité de PHP dans le développement web découle de sa capacité à intégrer de manière transparente HTML (et d'autres technologies web comme CSS et JavaScript) pour l'affichage dans un navigateur. Une page PHP typique n'est pas simplement du HTML brut ; c'est une combinaison soigneusement construite de deux composants clés : du texte de modèle statique et du contenu généré dynamiquement.

Considérez le panier d'achats d'une boutique en ligne. Un développeur n'a pas besoin de créer un fichier HTML séparé pour chaque configuration de panier possible. Au lieu de cela, un seul script PHP combine un modèle réutilisable – contenant des éléments comme l'en-tête HTML, la barre de navigation et le logo de l'entreprise – avec du code PHP qui remplit dynamiquement les détails du panier : noms des articles, prix, quantités, et plus encore. Ce mélange permet une base structurée tout en fournissant un contenu personnalisé et basé sur les données.

Cette combinaison puissante est la raison pour laquelle nous utilisons les balises <?php et ?> dans nos scripts. Tout texte en dehors de ces balises est traité comme du texte de modèle brut et est affiché exactement comme il apparaît dans le fichier. Inversement, tout ce à l’intérieur de ces balises est interprété comme du code PHP et exécuté. Cette distinction permet de créer des pages web dynamiques qui sont à la fois visuellement cohérentes et réactives aux interactions de l’utilisateur et aux données.

Comprendre le Texte de Modèle et le Code PHP

Lorsque vous travaillez avec PHP, il est crucial de différencier entre le texte brut (souvent appelé "texte de modèle") et le code PHP réel. Ils sont entrelacés dans un fichier PHP pour produire la sortie finale. La manière dont PHP interprète ces sections dépend de la façon dont elles sont marquées.

Quand une ligne contient seulement du code PHP – par exemple, une instruction print – seulement la balise d'ouverture <?php est requise. Cependant, si le code PHP est suivi de texte de modèle, vous devez inclure la balise de fermeture ?>. Illustrons ceci avec un exemple.

Une Démonstration Simple

Créez un nouveau fichier PHP, que nous appelons hello2.php, soit dans votre environnement en ligne préféré (comme Replit) soit en utilisant un IDE local. Collez le contenu suivant dans ce fichier :

I am template text, not PHP code.
print "Hello, world!\n";
I am more template text.

Maintenant, exécutez ce script depuis votre ligne de commande en utilisant la commande php hello2.php. Vous observerez la sortie suivante :

I am template text, not PHP code.
print "Hello, world!\n";
I am more template text.

Remarquez comment l'intégralité du contenu du fichier est imprimée textuellement, y compris le code PHP. Ceci arrive parce que le script manque de délimiteurs appropriés. PHP ne sait pas où le code PHP commence et se termine, donc il traite tout comme du texte de modèle. L'inclusion inattendue du mot-clé print, des guillemets et du point-virgule dans la sortie met en évidence ce problème.

L'invite du terminal apparaissant immédiatement après la dernière ligne est une autre conséquence de ceci. Les espaces blancs supplémentaires et les caractères de nouvelle ligne sont traités comme faisant partie du texte de modèle et sont imprimés directement, ce qui fait que le terminal commence une nouvelle invite sans ajouter de saut de ligne supplémentaire. Si le fichier se terminait par une ligne vide, l'invite du terminal serait sur sa propre ligne.

Correction du Script

Pour résoudre ce problème, nous devons clairement délimiter le bloc de code PHP. Voici le fichier hello2.php corrigé, avec les modifications mises en évidence :

I am template text, not PHP code.
<?php
print "Hello, world!\n";
?>
I am more template text.

En ajoutant les balises <?php et ?>, nous disons explicitement à PHP d'interpréter la ligne contenant print "Hello, world!\n"; comme code PHP. Maintenant, lorsque vous exécutez le script, PHP exécutera l'instruction print et affichera "Hello, world!" vers la console, tout en traitant les autres lignes comme du texte brut. Cette distinction est fondamentale pour structurer correctement les applications PHP.