Objectifs
- Structurer une application PHP en respectant les modèles en couche (présentation, métier, intégration).
- Mettre en œuvre les bonnes pratiques de développement.
- Gérer les dépendances d’un projet et leurs versions avec Composer.
- Utiliser les templates en PHP.
- Manipuler des documents XML avec SimpleXML.
- Générer dynamiquement des documents PDF.
- Manipuler des images avec PHP.
- Envoyer des courriers électroniques en PHP.
- Créer, tester, consommer et sécuriser des services Web REST en PHP.
Prérequis
Aucune
Programme
Industrialisation des développements PHP avec Composer
- Présentation de Composer pour la gestion des dépendances de projets PHP.
- Le projet Composer et le site Packagist.
- Création d’une structure de projet PHP avec Composer.
- L’organisation des dépendances.
- Le fichier composer.json.
- Les principales commandes de Composer.
- Ajout de dépendances.
- Gestion des mises à jour des dépendances.
- Travaux pratiques :
- Installation de Composer.
- Création d’un projet PHP et ajout de dépendances Composer de base.
Séparer le fond de la forme avec un moteur de templates
- L’architecture logicielle des sites et applications Web.
- Le modèle MVC et la séparation des responsabilités.
- Concepts de développement avec les templates.
- Mise en place d’une architecture de développement séparant les traitements.
- Écriture des modèles de documents HTML.
- Écriture des pages de traitement PHP.
- Les différentes librairies de templates.
- Smarty, Twig, …
- Travaux pratiques :
- Mise en place de la structure d’un site Web en respectant les concepts MVC.
- Création de contrôleurs PHP.
- Création de vues avec Twig.
Manipulation de documents XML avec l’API SimpleXML
- Présentation de SimpleXML.
- Parcours et analyse de flux XML.
- Utilisation de XPath.
- Modification de documents XML.
- Import/export de documents.
- Mécanismes de validation.
- Travaux pratiques :
- Implémentation d’une configuration d’application Web basée sur XML.
- Ajout d’une fonctionnalité d’import/export de données basée sur des fichiers XML.