• Aide
  • Eurêkoi Eurêkoi

Livre

Apprendre à développer des applications web avec PHP et Symfony

Résumé

Guide pour développer des applications web avec PHP et le framework Symfony, en version 5. L'auteur présente la manière dont fonctionne un site Internet ainsi que les outils pour le développer, les bases du langage PHP, la notion de langage objet, l'outil Composer, la construction d'un site et le déploiement d'une application. Le code des exemples et la version numérique sont disponibles en ligne.


  • Éditeur(s)
  • Date
    • 2023
  • Notes
    • Index
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (528 p.) : illustrations en noir et blanc ; 22 x 18 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-04148-8
  • Indice
  • Quatrième de couverture
    • Apprendre à développer des applications web avec PHP et Symfony

      Ce livre s'adresse aussi bien au lecteur qui souhaite disposer des connaissances nécessaires pour apprendre à développer des applications web avec PHP 8 et le framework Symfony (en version 6), qu'à celui disposant déjà de connaissances en PHP et qui souhaiterait approfondir sa connaissance du framework. Partant des bases jusqu'à mener le lecteur progressivement vers des notions plus avancées, ce livre ne nécessite aucune connaissance préalable dans le domaine du développement pour être lu.

      Après une introduction sur la manière dont fonctionne un site web et sur les outils nécessaires pour le développer, l'auteur présente les notions de base essentielles du langage PHP : variables, fonctions, types, opérateurs de comparaison... Il approfondit ensuite son propos avec la notion de langage objet et la découverte des outils de gestion de dépendances comme Composer et Scoop.

      Une fois les concepts fondamentaux de PHP présentés, le lecteur est ensuite invité à découvrir Symfony en commençant par la construction d'un site basique. Puis, petit à petit, il se familiarise avec des notions plus complexes telles que le routage, le moteur de templates Twig, l'utilisation de Webpack Encore, l'utilisation de Symfony Stimulus, l'installation de dépendances avec Symfony Flex, la gestion de bases de données avec Doctrine, les formulaires, la sécurité (y compris d'une API), les services ou encore l'utilisation de la classe Mailer, pour finir avec l'étude du déploiement d'une application.

      À chaque étape, des exemples illustrent les concepts transmis, que le lecteur peut reproduire à l'aide du code source proposé en téléchargement sur le site www.editions-eni.fr, et une référence à la documentation Symfony est donnée pour aller encore plus loin dans l'exploration du framework.


  • Tables des matières
      • Apprendre à développer des applications web avec PHP et Symfony

      • 2e édition

      • Editions ENI

      • Avant-propos
      • Chapitre 1
      • Qu'est-ce qu'un bon développeur ?
      • 1. Développer des applications web avec PHP et Symfony13
      • Chapitre 2
      • La boite à outils
      • 1. Windows, Mac OS ou Linux ?17
      • 1.1 Windows18
      • 1.2 Linux18
      • 1.3 Mac OS19
      • 2. La relation client-serveur20
      • 3. Le serveur local22
      • 4. Visual Studio Code27
      • Chapitre 3
      • Le langage PHP
      • 1. Comment écrire du PHP ?35
      • 2. Les bases du langage : votre premier Hello World !37
      • 3. Les variables en PHP39
      • 4. Les déclarations de type en PHP42
      • 5. Les structures de contrôle44
      • 5.1 La structure de contrôle if44
      • 5.2 Variable booléenne49
      • 5.3 Structure de contrôle foreach50
      • 5.4 Opérateur ternaire54
      • 6. Les fonctions PHP55
      • 6.1 Paramètres d'une fonction57
      • 6.2 Valeurs par défaut des paramètres60
      • 6.3 Retour de fonction61
      • 6.4 Le typage des fonctions63
      • 6.4.1 Le typage des paramètres63
      • 6.4.2 Le typage du retour de la fonction65
      • Chapitre 4
      • Le langage Objet
      • 1. Introduction69
      • 2. Des objets en programmation69
      • 3. Les classes70
      • 4. Les objets72
      • 5. Les propriétés et les méthodes d'un objet75
      • 6. Pourquoi le langage est-il dit objet ?76
      • 7. L'objet Sthis76
      • 8. Les méthodes magiques82
      • 8.1 La méthode toString()82
      • 8.2 Les méthodes get () et set() : portée des éléments84
      • 8.3 Les méthodes construct et destruct91
      • 9. Les espaces de noms95
      • 9.1 Un espace de noms, pour quoi faire ?98
      • 10. L'héritage de classe104
      • 11. La signature d'une méthode107
      • 12. Redéfinition d'une méthode109
      • 13. Portée des éléments dans les classes filles111
      • 14. Redéfinition du constructeur de la classe mère112
      • 15. Les constantes et les variables « static »116
      • 15.1 Les constantes116
      • 15.2 Les variables « static »118
      • 16. Les classes abstraites et les interfaces121
      • 16.1 Les classes abstraites121
      • 16.2 Les interfaces126
      • 17. Conclusion128
      • Chapitre 5
      • Les nouveautés en PHP 8
      • 1. Un zeste d'asynchrone : les fibres en PHP 8129
      • 2. Les autres nouveautés intéressantes en PHP 8139
      • 2.1 Les arguments nommés139
      • 2.2 Liste d'arguments à nombre variable140
      • 2.3 Déclaration de propriétés dans le constructeur d'une classe141
      • 2.4 Opérateur null sécurisé142
      • 2.5 Les chaînes de caractères (string)143
      • 2.6 Les types Union143
      • 2.7 Expression match144
      • 2.8 Autres améliorations144
      • Chapitre 6
      • Les frameworks
      • 1. Un framework : pour quoi faire ?145
      • 1.1 Quels sont les avantages ?145
      • 1.2 Quels sont les inconvénients ?146
      • 2. Les frameworks PHP147
      • 3. Le framework Symfony148
      • 3.1 Présentation du framework148
      • 3.2 La documentation150
      • Chapitre 7
      • Les outils de gestion de dépendances
      • 1. Introduction153
      • 2. Le gestionnaire de dépendances Composer154
      • 3. Variables d'environnement156
      • 4. Installation de Composer160
      • 5. Utilisation de Composer162
      • 6. Le gestionnaire de dépendances Scoop169
      • Chapitre 8
      • Installation de Symfony
      • 1. La bonne configuration173
      • 2. L'installation de l'installeur !174
      • 3. L'installation de votre projet Symfony175
      • 4. L'installation de Symfony avec Composer176
      • 5. L'installation d'une application Symfony allégée177
      • 6. Le test de l'installation177
      • 7. Le serveur local de Symfony178
      • Chapitre 9
      • Configurer une application
      • 1. Le fichier .env181
      • 1.1 Remplacement des variables d'environnement en local184
      • 1.2 La création d'une nouvelle configuration185
      • Chapitre 10
      • Une première application
      • 1. La structure de Symfony187
      • 2. Les contrôleurs188
      • 3. Les vues191
      • 4. Le dossier public194
      • 5. Le dossier var195
      • 6. Le dossier vendor195
      • 7. Les autres fichiers de l'application196
      • 8. Les composants de HttpFoundation196
      • 9. L'objet Request197
      • 10. L'objet Response203
      • 11. Les variables de session210
      • 11.1 L'utilité des variables de session210
      • 11.2 L'utilisation des variables de session sous Symfony211
      • 11.3 Les Flash Bags214
      • Chapitre 11
      • Le routage
      • 1. Organisation de l'application217
      • 2. Intérêt des routes218
      • 3. Routes sans annotations219
      • 4. Verbes des routes220
      • 5. Paramètres des routes221
      • 6. Paramètres conditionnels222
      • 7. Validation des paramètres222
      • 8. Liste des routes224
      • Chapitre 12
      • Le moteur de template Twig
      • 1. La syntaxe225
      • 2. L'héritage228
      • 3. L'inclusion de vue232
      • 4. L'utilisation des variables d'environnement233
      • 5. Les sessions et les Flash Bags dans Twig235
      • 5.1 Les variables de session235
      • 5.2 Les Flash Bags235
      • 6. L'inclusion du CSS et du JavaScript dans une vue238
      • 7. L'utilisation des routes dans la vue241
      • 8. Les filtres et les fonctions244
      • 8.1 Les filtres244
      • 8.2 Les fonctions248
      • Chapitre 13
      • Webpack Encore
      • 1. Introduction251
      • 2. Utilisation de Sass254
      • 3. Utilisation de Vue.js258
      • 4. Utilisation de app.css et app.js dans les vues260
      • Chapitre 14
      • Symfony UX Stimulus
      • 1. Introduction263
      • 2. Symfony UX264
      • 2.1 Principe de Symfony UX264
      • 2.2 Comment fonctionne Symfony UX pour installer les packages ?265
      • 2.3 Comment installer Symfony UX ?266
      • 2.4 Comment installer un composant Symfony UX ?266
      • 3. Symfony Stimulus268
      • 3.1 Comment utiliser Stimulus pour utiliser un composant ?268
      • 3.2 Comment utiliser Stimulus pour appliquer un composant ?268
      • 3.3 Symfony UX Stimulus avec React275
      • 4. HotWire et Turbo279
      • 4.1 Introduction279
      • 4.2 Le principe de HotWire281
      • 4.3 Symfony UX Turbo282
      • Chapitre 15
      • La couche modèle avec Doctrine
      • 1. Introduction287
      • 2. Les bases de données287
      • 3. Le langage SQL288
      • 4. L'ORM de Symfony : Doctrine289
      • 5. Les entités291
      • 6. Les migrations296
      • 7. Les fixtures299
      • 8. La récupération des données à partir de la base304
      • 9. Les méthodes du Repository315
      • 10. Le langage DQL316
      • 11. Le Query Builder319
      • 12. L'exécution des requêtes SQL322
      • 13. L'écriture d'une requête SQL et l'obtention des objets mappés323
      • 14. Les relations entre entités324
      • 15. Les relations OneToOne326
      • 16. Les relations ManyToMany332
      • 17. Les relations bidirectionnelles339
      • 18. Les relations bidirectionnelles avec attributs343
      • 19. Le Lazy Loading344
      • 20. Le Reverse Engineering347
      • Chapitre 16
      • Les formulaires
      • 1. Introduction349
      • 2. Form Builder350
      • 3. Formulaires externalisés356
      • 3.1 Définition356
      • 3.2 Utilisation du formulaire externe360
      • 4. Personnalisation de l'affichage d'un formulaire362
      • 5. Traitement des données du formulaire367
      • 6. Récupération des données de l'entité par défaut373
      • 7. Ajout des boutons de mise à jour dans la vue liste377
      • 8. Suppression d'une entité380
      • 9. Traitement de la jointure OneToOne380
      • 10. Traitement de la jointure ManyToMany383
      • 11. Type EntityType394
      • 12. Création de types de champs personnalisés397
      • 13. Validation des formulaires401
      • 13.1 Règles de validation401
      • 13.2 Service Validator404
      • 13.3 Asserts sur un accesseur406
      • 13.4 Contraintes de validation sur un Callback408
      • 13.5 Contraintes de validation sur la classe410
      • 13.6 Registration group412
      • 13.7 Création de ses propres contraintes414
      • 13.8 Personnalisation des messages d'erreurs : les fragments417
      • Chapitre 17
      • La sécurité
      • 1. Introduction421
      • 2. L'authentification422
      • 3. L'autorisation433
      • 3.1 access_control434
      • 3.2 Accès contrôleur439
      • 3.3 Accès action440
      • 3.4 Accès vue440
      • 4. La sécurité d'une API441
      • 4.1 Préparer la classe User446
      • 4.2 Créer la classe Authenticator447
      • 4.3 Configurer le fichier security.yaml448
      • 4.4 Ajouter des utilisateurs pour l'accès à l'API449
      • 4.5 Tester l'accès à l'API451
      • Chapitre 18
      • Personnalisation des pages d'erreurs
      • Chapitre 19
      • L'internationalisation
      • 1. Introduction457
      • 2. Le principe de la traduction457
      • 3. La variable locale458
      • 4. Les catalogues de traduction460
      • 5. Les éléments à traduire461
      • 6. Les variables dans les traductions463
      • 7. L'aide à la mise à jour des catalogues464
      • 8. L'organisation des catalogues464
      • 9. La gestion du pluriel467
      • 10. La traduction des messages des contraintes de validation470
      • 11. L'utilisation du nom de domaine472
      • Chapitre 20
      • Les services
      • 1. Rappel sur les espaces de noms475
      • 2. Notion de service477
      • 3. Utilisation des services478
      • 4. Création de son propre service480
      • 5. Injection d'un service dans un service483
      • Chapitre 21
      • La classe Mailer
      • 1. Installation et configuration487
      • 2. Envoi d'e-mails488
      • 3. Utilisation d'un template494
      • Chapitre 22
      • Déployer son site en production
      • 1. Introduction499
      • 2. Gestion des performances500
      • 2.1 Le cache HTTP500
      • 2.2 Mise en place des caches sur les contrôleurs501
      • 3. Utiliser un environnement de production505
      • 4. Vérifier la sécurité des dépendances505
      • 5. Préparer le serveur de production506
      • 6. Déployer votre application506
      • 6.1 Déploiement via FTP507
      • 6.2 Déploiement via des outils open source511
      • 6.3 Déploiement via le Cloud511
      • Conclusion 513
      • Index 515

  • Origine de la notice:
    • Electre
  • Disponible - 681.227 ROC

    Niveau 3 - Informatique