Aller au contenu principal

Module PHP.2 – Environnement

Objectif

Configurer son environnement de développement PHP : installer PHP, configurer un serveur local, comprendre la structure d'un projet PHP et les fichiers .php.

Théorie

PHP CLI

PHP CLI (Command Line Interface) permet d'exécuter PHP depuis le terminal.

Vérifier l'installation :

php --version

Exécuter un fichier PHP :

php mon-fichier.php

Avantages du CLI :

  • Tests rapides
  • Scripts d'automatisation
  • Outils en ligne de commande
  • Débogage

Exemple simple :

<?php
// test.php
echo "Bonjour depuis PHP CLI !\n";
?>

Exécution : php test.php

Serveur local

Pour développer, vous avez besoin d'un serveur web local.

Option 1 : Serveur PHP intégré (pour développement)

PHP inclut un serveur web simple :

php -S localhost:8000

Utilisation :

  • Ouvrez votre navigateur
  • Allez sur http://localhost:8000
  • Le serveur sert les fichiers du dossier actuel

Avantages :

  • Aucune configuration
  • Parfait pour débuter
  • Rapide à démarrer

Limitations :

  • Uniquement pour développement
  • Pas de configuration avancée
  • Performance limitée

Option 2 : XAMPP / MAMP / WAMP

Solutions tout-en-un incluant :

  • Apache (serveur web)
  • PHP
  • MySQL (base de données)
  • phpMyAdmin

XAMPP (Windows/Mac/Linux) :

  1. Télécharger depuis https://www.apachefriends.org
  2. Installer
  3. Démarrer Apache et MySQL
  4. Placer vos fichiers dans htdocs/

MAMP (Mac) :

  • Similaire à XAMPP, optimisé pour macOS

WAMP (Windows) :

  • Version Windows de XAMPP

Option 3 : Docker

Conteneurisation pour environnement isolé.

Avantages :

  • Environnement reproductible
  • Isolation des projets
  • Facile à partager

Structure d'un projet PHP

Structure de base :

mon-projet/
├── index.php # Point d'entrée
├── config.php # Configuration
├── includes/ # Fichiers inclus
│ ├── header.php
│ └── footer.php
├── classes/ # Classes PHP
│ └── User.php
├── functions/ # Fonctions
│ └── utils.php
├── assets/ # Ressources statiques
│ ├── css/
│ ├── js/
│ └── images/
└── vendor/ # Dépendances (Composer)

Structure recommandée (PSR-4) :

mon-projet/
├── public/ # Point d'entrée public
│ └── index.php
├── src/ # Code source
│ ├── Controllers/
│ ├── Models/
│ └── Views/
├── config/ # Configuration
├── vendor/ # Dépendances
└── composer.json # Dépendances Composer

Fichiers .php

Extension : Tous les fichiers PHP ont l'extension .php

Structure d'un fichier PHP :

<?php
// Code PHP ici
?>

Balises PHP :

  • <?php ... ?> : Standard, toujours fonctionne
  • <? ... ?> : Court, nécessite configuration
  • <?= ... ?> : Écho court (équivalent à <?php echo ... ?>)

Bonnes pratiques :

  • Toujours utiliser <?php (plus portable)
  • Fermer la balise ?> seulement si nécessaire
  • Dans les fichiers purs PHP, omettre ?> à la fin

Exemple de fichier :

<?php
// Fichier : index.php

// Configuration
define('SITE_NAME', 'Mon Site');

// Fonctions
function saluer($nom) {
return "Bonjour " . $nom;
}

// Code principal
$message = saluer("Jean");
echo $message;
?>

Configuration PHP

Fichier php.ini :

  • Configuration principale de PHP
  • Emplacement selon l'installation
  • Trouver l'emplacement : php --ini

Paramètres importants :

display_errors = On          # Afficher les erreurs (dev)
error_reporting = E_ALL # Niveau de rapport d'erreurs
upload_max_filesize = 2M # Taille max upload
post_max_size = 8M # Taille max POST
memory_limit = 128M # Limite mémoire

Outils de développement

IDE recommandés :

  • PhpStorm : Professionnel, payant
  • VS Code : Gratuit, extensions PHP
  • NetBeans : Gratuit, complet

Extensions VS Code utiles :

  • PHP Intelephense
  • PHP Debug
  • PHP DocBlocker

Débogueur :

  • Xdebug : Extension PHP pour déboguer
  • Intégration avec IDE

Exercice

  1. Installation

    • Installez PHP sur votre système
    • Vérifiez la version : php --version
    • Testez PHP CLI avec un fichier simple
  2. Serveur local

    • Démarrez le serveur PHP intégré
    • Créez un fichier test.php avec <?php echo "Test"; ?>
    • Accédez-y via http://localhost:8000/test.php
  3. Structure de projet

    • Créez une structure de projet PHP
    • Organisez les dossiers (includes, classes, assets)
    • Créez un fichier index.php de base
  4. Configuration

    • Trouvez votre fichier php.ini
    • Vérifiez les paramètres importants
    • Notez les valeurs actuelles
  5. IDE

    • Installez VS Code ou un autre IDE
    • Installez les extensions PHP
    • Testez la coloration syntaxique

Quiz

  1. Comment exécuter un fichier PHP depuis le terminal ?

    • php.exe fichier.php
    • php fichier.php
    • run php fichier.php
  2. Quel port utilise le serveur PHP intégré par défaut ?

    • 80
    • 8000
    • 3000
  3. Quelle extension ont les fichiers PHP ?

    • .html
    • .php
    • .ph
  4. Quelle balise PHP est la plus portable ?

    • <?php ... ?>
    • <? ... ?>
    • Les deux sont équivalentes
  5. Où placer les fichiers dans XAMPP ?

    • C:\xampp\
    • C:\xampp\htdocs\
    • C:\xampp\php\

Mini défi

Mission : Configurer un environnement PHP complet

  1. Installation complète

    • Installez PHP (ou XAMPP/MAMP)
    • Vérifiez que tout fonctionne
    • Testez PHP CLI et serveur web
  2. Structure de projet

    • Créez un projet "mon-premier-projet-php"
    • Organisez avec la structure recommandée
    • Créez les dossiers : includes, classes, assets, config
  3. Fichier de test

    • Créez index.php avec un contenu de test
    • Créez test.php pour tester PHP CLI
    • Vérifiez que les deux fonctionnent
  4. Configuration IDE

    • Installez VS Code ou PhpStorm
    • Configurez les extensions PHP
    • Testez la coloration et l'auto-complétion
  5. Documentation

    • Créez un fichier README.md dans votre projet
    • Documentez comment démarrer le serveur
    • Notez la structure du projet

Objectif : Avoir un environnement PHP fonctionnel et prêt pour développer.


Validation : Vous pouvez passer au module suivant quand vous avez un environnement PHP fonctionnel et pouvez exécuter des fichiers PHP.