Formation certifiante
Accédez à un niveau avancé en développement PHP avec notre formation axée sur l’utilisation de fonctionnalités de haut niveau.
Apprenez à gérer les dépendances de projets avec Composer, à structurer vos projets avec le modèle MVC et à créer des vues et des contrôleurs avec Twig.
Familiarisez-vous avec la manipulation de documents XML avec SimpleXML, la génération de documents PDF et l’envoi de courriels avec PHP.
Explorez en profondeur la création, la consommation et la sécurisation de services Web REST.
La formation est idéale pour les développeurs PHP cherchant à améliorer leurs compétences et à intégrer des fonctionnalités avancées dans leurs applications web.
Programme détaillé
Industrialisation des développements PHP avec Composer (3 heures)
- 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 (5 heures)
- 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 (3 heures)
- 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
Génération de documents PDF (5 heures)
- Les différentes librairies PHP pour la création de PDF (FPDF, PDFLib, …)
- Principe et format des documents PDF
- Création d’un document PDF
- Gestion des polices de caractères
- Positionner et mettre en page du texte dans les documents
- Utiliser des images
- Ajouter des signets, hyperliens, miniatures et notes
- Travaux pratiques :
- Génération d’un contenu PDF à la volée
- Utilisation de données stockées en base pour la création d’un document PDF disponible au téléchargement
Les fonctions de courrier électronique (3 heures)
- Les fonctionnalités natives de PHP
- La fonction mail() de PHP
- Gestion du type MIME
- Intégration des pièces jointes
- Utilisation d’une librairie de haut niveau pour l’envoi de mail
- Présentation et mise en œuvre de PHPMailer
- Travaux pratiques :
- Ajout d’une fonction d’envoi de document par mail avec la librairie PHPMailer
- Inclusion de pièce jointes dans les mails
Génération dynamique d’images (3 heures)
- Présentation de la librairie GD
- Création d’images et modification d’images existantes
- Gestion des chaînes de caractères et des polices
- Alternatives connues pour la génération de graphiques
- Travaux pratiques :
- Création de graphiques avancés avec une librairie de génération pour PHP
Développement de services Web REST avec PHP (6 heures)
- Introduction aux services REST
- Les concepts fondamentaux de REST (REpresentational State Transfer)
- Utilisation de REST dans une architecture informatique
- Structure d’une requête et d’une réponse HTTP
- L’identification des ressources par URI
- Les formats de données utilisables : XML, HTML, JSON, …
- Développement des services REST avec PHP
- Principes de base pour la construction d’une API serveur REST
- Les frameworks et librairies PHP pour REST : Recess, Slim
- Implémentation de services REST avec ces frameworks et librairies et utilisation des formats de données XML et JSON
- Développement de clients REST avec les librairies Guzzle et cURL
- Mécanismes de tests de services Web REST
- Sécurité des services Web REST
- Les problématiques de sécurité autour des services Web
- Authentification pour les services REST
- Cryptage : liaison HTTPS et certificats
- Travaux pratiques :
- Écriture d’un service Web REST échangeant des données au format JSON avec la librairie Slim
- Écriture de tests de services Web REST avec Postman
- Écriture d’un client REST en utilisant la librairie Guzzle
- Sécurisation des services REST : restriction d’accès par authentification et cryptage des données échangées