Aller au contenu principal

Module PHP.3 – Syntaxe & bases

Objectif

Maîtriser la syntaxe fondamentale de PHP : balises PHP, echo/print, commentaires, et déclaration de variables.

Théorie

Balises PHP

Les balises PHP délimitent le code PHP dans un fichier.

Balise standard (recommandée) :

<?php
// Code PHP
?>

Balise courte (nécessite configuration) :

<?
// Code PHP
?>

Balise d'écho court :

<?= $variable ?>
<!-- Équivalent à : -->
<?php echo $variable; ?>

Fichier PHP pur : Dans un fichier contenant uniquement du PHP, on peut omettre la balise fermante ?> :

<?php
// Fichier : functions.php
function maFonction() {
return "Résultat";
}
// Pas de ?> à la fin

Pourquoi omettre ?> ?

  • Évite les espaces blancs accidentels
  • Meilleure pratique PSR-12
  • Évite les erreurs d'en-têtes HTTP

echo et print

echo :

echo "Bonjour le monde";
echo "Bonjour ", "le ", "monde"; // Plusieurs arguments
echo $nom;
echo "Bonjour " . $nom; // Concaténation

print :

print "Bonjour le monde";
print $nom;

Différences :

  • echo peut prendre plusieurs arguments
  • echo est légèrement plus rapide
  • print retourne toujours 1 (peut être utilisé dans des expressions)

Recommandation : Utilisez echo (plus courant et flexible).

Interpolation de variables :

$nom = "Jean";

// Double guillemets (interpolation)
echo "Bonjour $nom"; // Bonjour Jean
echo "Bonjour {$nom}"; // Bonjour Jean (plus sûr)

// Simple guillemets (pas d'interpolation)
echo 'Bonjour $nom'; // Bonjour $nom (littéral)

Commentaires

Commentaire sur une ligne :

// Ceci est un commentaire
echo "Code"; // Commentaire en fin de ligne

Commentaire sur plusieurs lignes :

/*
* Ceci est un commentaire
* sur plusieurs lignes
* très utile pour documenter
*/

Commentaire de documentation (PHPDoc) :

/**
* Description de la fonction
*
* @param string $nom Le nom de la personne
* @return string Message de salutation
*/
function saluer($nom) {
return "Bonjour " . $nom;
}

Bonnes pratiques :

  • Commentez le "pourquoi", pas le "comment"
  • Utilisez PHPDoc pour les fonctions/classes
  • Gardez les commentaires à jour

Variables

Déclaration :

$nom = "Jean";
$age = 25;
$prix = 19.99;

Caractéristiques :

  • Commencent toujours par $
  • Sensibles à la casse ($nom$Nom)
  • Pas besoin de déclaration de type
  • Type déterminé automatiquement

Règles de nommage :

  • Commencent par une lettre ou underscore
  • Peuvent contenir lettres, chiffres, underscores
  • Pas d'espaces
  • Noms descriptifs recommandés

Exemples valides :

$nom = "Jean";
$nom_utilisateur = "user123";
$_variable = "test";
$nomUtilisateur = "camelCase"; // Possible mais moins courant en PHP

Exemples invalides :

$123nom = "test";      // Ne peut pas commencer par un chiffre
$nom utilisateur = ""; // Pas d'espaces
$nom-utilisateur = ""; // Pas de tirets

Affectation :

$age = 25;           // Affectation simple
$age = $age + 1; // Incrémentation
$age += 1; // Raccourci
$age++; // Post-incrémentation
++$age; // Pré-incrémentation

Variables de variables :

$nom = "age";
$$nom = 25; // Crée $age = 25

Portée des variables :

$globale = "Je suis globale";

function maFonction() {
$locale = "Je suis locale";
// $globale n'est pas accessible ici
global $globale; // Pour accéder à la variable globale
echo $globale;
}

Constantes

Définition :

define("SITE_NAME", "Mon Site");
define("VERSION", "1.0.0");
define("MAX_USERS", 100);

// Utilisation
echo SITE_NAME; // Mon Site

Constantes avec const (PHP 5.3+) :

const PI = 3.14159;
const SITE_URL = "https://monsite.com";

Différences :

  • define() : Fonction, peut être dans une condition
  • const : Mot-clé, doit être au niveau supérieur

Constantes magiques :

echo __FILE__;      // Chemin du fichier actuel
echo __LINE__; // Numéro de ligne actuel
echo __DIR__; // Dossier du fichier actuel
echo __FUNCTION__; // Nom de la fonction actuelle
echo __CLASS__; // Nom de la classe actuelle

Exercice

  1. Balises PHP

    • Créez un fichier avec du HTML et du PHP mélangé
    • Utilisez les différentes balises
    • Testez l'affichage
  2. echo et print

    • Utilisez echo avec plusieurs arguments
    • Testez l'interpolation avec double et simple guillemets
    • Comparez echo et print
  3. Commentaires

    • Ajoutez des commentaires à votre code
    • Créez une fonction avec PHPDoc
    • Testez différents types de commentaires
  4. Variables

    • Créez des variables de différents types
    • Testez les règles de nommage
    • Expérimentez avec les opérateurs d'affectation
  5. Constantes

    • Définissez des constantes pour votre projet
    • Utilisez-les dans votre code
    • Testez les constantes magiques

Quiz

  1. Quelle balise PHP est la plus portable ?

    • <?php ... ?>
    • <? ... ?>
    • Les deux
  2. Quelle est la différence entre echo et print ?

    • Aucune différence
    • echo peut prendre plusieurs arguments
    • print est plus rapide
  3. Comment déclare-t-on une variable en PHP ?

    • var nom = "Jean"
    • $nom = "Jean"
    • let nom = "Jean"
  4. Que fait $$nom ?

    • Double la variable
    • Crée une variable de variable
    • Affiche deux fois
  5. Comment définit-on une constante ?

    • $CONSTANTE = "valeur"
    • define("CONSTANTE", "valeur")
    • const CONSTANTE = "valeur" (seulement)

Mini défi

Mission : Créer votre premier script PHP complet

Créez un fichier premier-script.php qui :

  1. Définit des constantes

    • SITE_NAME
    • VERSION
    • AUTEUR
  2. Déclare des variables

    • Votre nom
    • Votre age
    • Votre ville
  3. Affiche des informations

    • Utilise echo avec interpolation
    • Affiche les constantes
    • Affiche les variables avec formatage
  4. Documentation

    • Ajoutez des commentaires PHPDoc
    • Commentez chaque section
    • Expliquez ce que fait le code

Exemple de sortie attendue :

=== Informations du site ===
Site : Mon Site
Version : 1.0.0
Auteur : Votre Nom

=== Mes informations ===
Nom : Jean
Age : 25 ans
Ville : Paris

Critères :

  • ✅ Utilisation correcte des balises PHP
  • ✅ Variables bien nommées
  • ✅ Constantes définies
  • ✅ Commentaires appropriés
  • ✅ Code propre et lisible

Objectif : Maîtriser la syntaxe de base de PHP et créer votre premier script fonctionnel.


Validation : Vous pouvez passer au module suivant quand vous maîtrisez les balises, echo, commentaires et variables.