Développement avancé avec PHP

Dernière mise à jour : 17 juillet 2023

icone d'une formation certifiante

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.

Objectifs pédagogiques


  • 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.

Public concerné


Concepteurs/Développeurs, Architectes techniques, Chefs de projets.

Prérequis


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

Certification


Cette formation prépare en partie à la certification Développement de sites web dynamiques – Option langage PHP

Suite à la formation, une mise en pratique approfondie de plusieurs mois est nécessaire pour garantir un bon résultat à l’examen.

Pour compléter la préparation à cet examen, il est possible de suivre les formations :

Cette certification permet de prétendre aux métiers de :

  • Concepteur-Développeur
  • Intégrateur Web

 

Délais d'accès à la formation


Les inscriptions sont possibles jusqu'à 48 heures avant le début de la formation.

Dans le cas d'une formation financée par le CPF, ENI Service est tenu de respecter un délai minimum obligatoire de 11 jours ouvrés entre la date d'envoi de sa proposition et la date de début de la formation.

Modalités et moyens pédagogiques, techniques et d'encadrement


Formation avec un formateur, qui peut être suivie selon l’une des 3 modalités ci-dessous :

1 - Dans la salle de cours en présence du formateur.

2 - Dans l’une de nos salles de cours immersives, avec le formateur présent physiquement à distance. Les salles immersives sont équipées d’un système de visio-conférence HD et complétées par des outils pédagogiques qui garantissent le même niveau de qualité.

3 - Depuis votre domicile ou votre entreprise. Vous rejoignez un environnement de formation en ligne, à l’aide de votre ordinateur, tout en étant éloigné physiquement du formateur et des autres participants. Vous êtes en totale immersion avec le groupe et participez à la formation dans les mêmes conditions que le présentiel. Pour plus d’informations : Le téléprésentiel – notre solution de formation à distance.


Le nombre de stagiaires peut varier de 1 à 12 personnes (5 à 6 personnes en moyenne), ce qui facilite le suivi permanent et la proximité avec chaque stagiaire.

Chaque stagiaire dispose d’un poste de travail adapté aux besoins de la formation, d’un support de cours et/ou un manuel de référence au format numérique ou papier.

Pour une meilleure assimilation, le formateur alterne tout au long de la journée les exposés théoriques, les démonstrations et la mise en pratique au travers d’exercices et de cas concrets réalisés seul ou en groupe.

Modalités d'évaluation des acquis


En début et en fin de formation, les stagiaires réalisent une auto-évaluation de leurs connaissances et compétences en lien avec les objectifs de la formation. L’écart entre les deux évaluations permet ainsi de mesurer leurs acquis.

En complément, pour les stagiaires qui le souhaitent, certaines formations peuvent être validées officiellement par un examen de certification. Les candidats à la certification doivent produire un travail personnel important en vue de se présenter au passage de l'examen, le seul suivi de la formation ne constitue pas un élément suffisant pour garantir un bon résultat et/ou l'obtention de la certification.

Pour certaines formations certifiantes (ex : ITIL, DPO, ...), le passage de l'examen de certification est inclus et réalisé en fin de formation. Les candidats sont alors préparés par le formateur au passage de l'examen tout au long de la formation.

Moyens de suivi d'exécution et appréciation des résultats


  • Feuille de présence, émargée par demi-journée par chaque stagiaire et le formateur.
  • Evaluation qualitative de fin de formation, qui est ensuite analysée par l'équipe pédagogique ENI.
  • Attestation de fin de formation, remise au stagiaire en main propre ou par courrier électronique.

Qualification du formateur


La formation est animée par un professionnel de l’informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique.

Il est en veille technologique permanente et possède plusieurs années d’expérience sur les produits, technologies et méthodes enseignés.

Il est présent auprès des stagiaires pendant toute la durée de la formation.