Accueil
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi Eclipse MS-Office SQL & SGBD Oracle  4D  Business Intelligence

Cours de PHP 5

Date de publication : 12 mai 2008 , Date de mise à jour : 23 juillet 2008

Par Guillaume Rossolini (Tutoriels Web / SEO / PHP) (Blog)
 

Ce cours vous apprendra à vous initier à tous les aspects du langage PHP, depuis la syntaxe jusqu'aux meilleures techniques de programmation. De nombreux exemples facilitent la compréhension par l'expérience.
Nous verrons également d'autres aspects comme les méthodes de Test d'applications ainsi qu'une vision globale de la communauté PHP.


 

Page 1
I. Introduction
I-A. Remerciements
I-B. Préambule
I-C. Problématique
I-D. Communauté
I-E. Outils de développement
I-F. Documentation
I-G. Utilisations de PHP
I-G-1. Exemple Web
I-G-2. Exemple "CLI"
I-G-3. Exemple "GUI"
Page 2
II. Exemples de scripts (mise en jambe)
II-A. Exécution des scripts d'exemple
II-B. Affichage
II-C. Boucles
Page 3
III. Syntaxe du langage PHP
III-A. Préambule
III-B. Présentation du code
III-C. Parenthèses
III-D. Accolades
III-E. Commentaires
III-F. Opérateurs
III-F-1. Arithmétique (+ - * / %)
III-F-2. Affectation de variable (= += -= *= /= .=)
III-F-3. Comparaison (== === != <> !== > >= < <= instanceof)
III-F-4. Condition (?)
III-F-5. Incrémentation / diminution (++ --)
III-F-6. Arithmétique logique, aka opérateurs de bits (& |)
III-F-7. Comparaison logique (&& || and or)
III-F-8. Opérateurs de tableaux (+ == === <> != !==)
III-F-9. Opérateurs spéciaux (@ ``)
III-G. Types
III-G-1. Préambule
III-G-2. Type chaîne de caractères (string)
III-G-3. Type numérique (int, float)
III-G-4. Types spéciaux (null resource object)
III-G-5. Fonctions utiles
III-H. Variables
III-H-1. Syntaxe
III-H-2. Superglobales
III-H-3. Références
III-H-4. Fonctions utiles
III-H-5. Bonnes pratiques
III-I. Constantes
III-I-1. Syntaxe
III-I-2. Constantes magiques
III-I-3. Fonctions utiles
III-I-4. Utilisation
III-J. Tableaux
III-J-1. Syntaxe
III-J-2. Pointeur interne
III-J-3. Fonctions utiles
III-K. Structures de contrôle
III-K-1. Conditionnelle "if"
III-K-2. Alternative "switch"
III-K-3. Boucle "for"
III-K-4. Boucle "while"
III-K-5. Boucle "do while"
III-K-6. Boucle "each"
III-K-7. Boucle "foreach"
III-L. Fonctions
III-L-1. Syntaxe
III-L-2. Visibilité des variables
III-L-3. Fonctions et constantes utiles
Page 4
IV. Programmation Orientée Objet (POO)
IV-A. Modèle objet
IV-A-1. Bref historique
IV-A-2. Terminologie
IV-A-3. Les mots réservés
IV-A-4. Syntaxe
IV-A-5. Droits d'accès
IV-A-6. Résolution de portée
IV-A-7. Interfaces
IV-A-8. Références et clônage
IV-A-9. Late Static Bindings (LSB)
IV-A-10. Exceptions
IV-A-11. Fonctions et constantes utiles
IV-B. Espaces de noms
IV-B-1. Introduction
IV-B-2. Syntaxe
IV-B-3. Exemple d'utilisation
Page 5
V. Configuration par le fichier php.ini
V-A. Introduction
V-B. Core
V-B-1. short_open_tag
V-B-2. output_buffering
V-B-3. safe_mode
V-B-4. disable_*
V-B-5. max_*_time
V-B-6. memory_limit
V-B-7. error_reporting
V-B-8. display_errors
V-B-9. display_startup_errors
V-B-10. log_errors
V-B-11. error_prepend_string
V-B-12. error_log
V-B-13. register_globals
V-B-14. post_max_size
V-B-15. magic_quotes_*
V-B-16. default_mimetype
V-B-17. default_charset
V-B-18. include_path
V-B-19. extension_dir
V-B-20. enable_dl
V-B-21. upload_max_filesize
V-B-22. allow_url_*
V-C. Modules
V-C-1. Date
V-C-2. mail function
V-C-3. Session
V-C-4. Tidy
V-D. Extensions
Page 6
VI. Concepts fondamentaux
VI-A. Fonctionnement d'un script
VI-A-1. Introduction
VI-A-2. Contrôle de l'exécution
VI-A-2-a. Arrêt du script
VI-A-2-b. Contrôle d'erreurs
VI-A-3. Contrôle du flux de sortie
VI-B. Structure d'un script
VI-C. Inclure un script dans un autre script
VI-C-1. Introduction
VI-C-2. Les instructions include, include_once, require et require_once
VI-C-3. Chargement automatique de classes (inclusion implicite)
VI-C-4. Dangers
VI-C-5. Bonnes pratiques
VI-D. Sécurité au niveau du script
VI-D-1. Introduction
VI-D-2. Validation des données
VI-D-3. Filtrage des données
VI-D-4. Utilisation des données
VI-D-5. Dangers
VI-D-6. Bonnes pratiques
VI-E. En-têtes HTTP (headers)
VI-E-1. Introduction
VI-E-2. Quand faut-il envoyer les en-têtes ?
VI-E-3. Dangers
VI-E-4. Bonnes pratiques
VI-F. Liens, URLs et paramètres GET
VI-F-1. Introduction
VI-F-2. Utilisation
VI-F-3. Construire une bonne URL
VI-F-4. Construire un bon lien (balise HTML)
VI-F-5. Dangers
VI-F-6. Bonnes pratiques
VI-G. Encodage des caractères
VI-G-1. Introduction
VI-G-2. Encodage du script : système de fichiers
VI-G-3. Encodage du document : entités HTML
VI-G-4. Encodage d'URL : la RFC 1738
VI-G-5. Entités HTML + RFC 1738
VI-G-6. Exemple d'encodage UTF-8
VI-G-7. Exemple d'encodage ISO
VI-G-8. Exemple de caractères UTF-8 encodés en ISO
VI-G-9. Exemple de caractères ISO encodés en UTF-8
VI-G-10. Espace occupé par l'encodage
VI-G-11. Dangers
VI-G-12. Bonnes pratiques
VI-G-13. Le module iconv
VI-G-14. L'extension mbstring
VI-G-15. Expressions régulières (PCRE) et Unicode
Page 7
VII. Manipulation de données
VII-A. Bases de données relationnelles
VII-A-1. Introduction
VII-A-2. Accès aux données
VII-A-3. Performances
VII-A-4. Bonnes pratiques
VII-B. Fichiers XML
VII-B-1. Introduction
VII-B-2. Lecture : SimpleXML
VII-B-3. Écriture : DOM
VII-C. Services Web
VII-C-1. Introduction
VII-C-2. SOAP (anciennement "Simple Object Access protocol")
VII-C-3. Remote Procedure Calls (RPC)
VII-C-4. Service-oriented architecture (SOA)
VII-C-5. REpresentational State Transfer (REST)
VII-C-6. Conclusion
VII-D. Autres formats : PDF, ZIP, Flash, images, etc.
Page 8
VIII. Exemples d'application
VIII-A. Introduction
VIII-B. Application simple
VIII-B-1. Introduction
VIII-B-2. Les scripts
VIII-B-3. Avantages
VIII-B-4. Inconvénients
VIII-C. Inclusions
VIII-C-1. Introduction
VIII-C-2. Les scripts
VIII-C-3. Nouveaux avantages
VIII-C-4. Nouveaux inconvénients
VIII-D. Sans l'extension ".php"
VIII-D-1. Introduction
VIII-D-2. Les scripts modifiés
VIII-D-3. Nouveaux avantages
VIII-D-4. Nouveaux inconvénients
VIII-E. Modèles (classes pour la BDD)
VIII-E-1. Introduction
VIII-E-2. Les scripts
VIII-E-3. Nouveaux avantages
VIII-E-4. Nouveaux inconvénients
VIII-F. URL Rewriting, ou Routage
VIII-F-1. Introduction
VIII-F-2. Les scripts
VIII-F-3. Nouveaux avantages
VIII-F-4. Nouveaux inconvénients
VIII-G. Design pattern MVC (modèle-vue-contrôleur)
VIII-G-1. Introduction
VIII-G-2. Tous les scripts
VIII-G-3. Conclusion
Page 9
IX. Démarche qualité
IX-A. Introduction
IX-B. Environnements
IX-B-1. Introduction
IX-B-2. Serveur "dev"
IX-B-3. Serveur "staging/test"
IX-B-4. Serveur "production/live"
IX-B-5. Conclusion
IX-C. Tests
IX-C-1. Introduction
IX-C-2. Tests unitaires
IX-C-3. Test-driven development (TDD)
IX-C-4. Conclusion
IX-D. Débogage
IX-D-1. Introduction
IX-D-2. Xdebug
IX-E. Motifs de conception (design patterns)
IX-E-1. Introduction
IX-E-2. Pattern MVC
IX-E-3. Pattern Singleton
IX-E-4. Conclusion
IX-F. Frameworks
IX-F-1. Introduction
IX-F-2. CakePHP
IX-F-3. eZ Components
IX-F-4. PEAR
IX-F-5. symfony
IX-F-6. Zend Framework
IX-F-7. Conclusion
Page 10
X. Optimisation
X-A. Optimiser un script PHP
X-B. Mise en cache
X-C. Compiler un script PHP
X-D. Compiler PHP
X-E. Développer une extension
Page 11
XI. Aider la communauté
XI-A. Introduction
XI-B. Détection et correction de bugs
XI-C. Tester le code source de PHP
XI-D. Documentation
XI-E. Éducation
Page 12
XII. Conclusion
XII-A. Épilogue
XII-B. Liens
XII-C. L'auteur




 

Copyright ©2008 Guillaume Rossolini. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.

Vos questions techniques : forum d'entraide Accueil - Publiez vos articles, tutoriels, cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter - Copyright 2000..2005 www.developpez.com