Programmation PHP/Version Imprimable — Wiki
Total Page:16
File Type:pdf, Size:1020Kb
Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... Programmation PHP Une version à jour et éditable de ce livre est disponible sur Wikilivres, une bibliothèque de livres pédagogiques, à l'URL : https://fr.wikibooks.org/wiki/Programmation_PHP Vous avez la permission de copier, distribuer et/ou modifier ce document selon les termes de la Licence de documentation libre GNU, version 1.2 ou plus récente publiée par la Free Software Foundation ; sans sections inaltérables, sans texte de première page de couverture et sans Texte de dernière page de couverture. Une copie de cette licence est incluse dans l'annexe nommée « Licence de documentation libre GNU ». 1 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... Sections 1 Introduction 1.1 Historique 1.2 Sites Web statiques ou dynamiques 1.3 Possibilités 2 Installer PHP 2.1 Principe 2.2 Unix / Linux 2.2.1 LAMP 2.2.2 Installation manuelle 2.2.2.1 Apache sur Debian / Ubuntu 2.2.2.1.1 PHP 2.2.2.1.1.1 Mise à jour 2.2.2.2 Apache sur Gentoo 2.2.2.3 MySQL seul 2.2.2.4 APT 2.2.2.4.1 Variante 2.2.2.5 Sur Gentoo 2.2.3 Installer PhpMyAdmin 2.2.3.1 Installer Apache et PHP avec PhpMyAdmin 2.2.4 Modules 2.2.5 Sites 2.3 Problème d'encodage d'Apache2 2.3.1 Encodage par défaut en Latin1 (ISO-8859-1) 2.3.2 Aucun encodage par défaut 2.4 Windows 2.4.1 Tout-en-un 2.4.1.1 Message d'erreur relatif à SSL 2.4.2 Installation manuelle 2.4.2.1 Installer Apache 2.4.2.2 Installer PHP 2.4.2.3 MySQL 2.4.3 IIS 2.5 CGI ou module ? 2.6 IDE 2.6.1 vim 2.7 Références 3 Composer 3.1 Composer 3.1.1 Installation 3.1.2 Utilisation 2 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 3.1.2.1 require 3.1.2.2 install 3.1.2.3 update 3.1.2.4 composer.json 3.1.3 Stability Flag 3.2 Références 4 PhpStorm 4.1 Installation 4.2 Configuration 4.3 Fonctionnalités 4.3.1 Gestion de version 4.3.2 Xdebug 4.3.2.1 Docker 4.4 Raccourcis clavier 4.5 Plugins 4.6 Critique 4.7 Références 5 NetBeans 5.1 Installation de NetBeans 5.2 Configuration 5.3 Utilisation 5.3.1 Gestion de versions 5.4 Principaux raccourcis claviers 6 Eclipse 6.1 Installation de Eclipse 6.2 Utilisation de Eclipse 7 Bases du langage 7.1 Intégration du code 7.2 Les commentaires 7.2.1 Standardisation des commentaires 7.3 Les directives 7.4 Références 8 Premier programme 8.1 Hello World 8.1.1 Dans un fichier 8.2 Analyse du code 8.3 Parse error 8.4 Particularités de PHP CLI 8.5 Références 9 Variables 9.1 Définition 9.2 Exemple 9.3 Types de variables 9.3.1 Fonctions usuelles sur les chaines 3 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 9.4 Variables dynamiques 9.5 Autres variables 9.5.1 Variables superglobales 9.5.2 Variables de sessions 9.5.3 Variables de cookie 9.5.4 Variables de requêtes 9.5.5 Variables de fichiers 9.5.6 Variables mixtes 9.5.7 Variables de serveurs 9.5.7.1 Détection du protocole 9.6 Tester les types 9.7 Conversions 9.7.1 URLs 9.8 Références 10 Variables superglobales 10.1 Les variables superglobales 10.1.1 Variables de serveur : $_SERVER 10.1.1.1 Références 10.1.2 Variables d'environnement : $_ENV 10.1.3 Cookies : $_COOKIE 10.1.4 GET variables : $_GET 10.1.5 POST variables : $_POST 10.1.6 Variables de requête : $_REQUEST 10.1.7 Variable de téléchargement : $_FILES 10.1.8 Variables de session : $_SESSION 10.1.9 Variables globales : $GLOBALS 10.2 filter_input() 10.3 Références 11 Constantes 11.1 Nom 11.2 Déclaration 11.3 Utilisation 11.4 Informations supplémentaires 11.4.1 Type de données 11.4.2 Unicité de la déclaration 11.4.3 Conflit de nom 11.4.4 Constantes prédéfinies 11.4.4.1 Constantes intégrées à valeur fixe 11.4.4.2 Constantes intégrées à valeur dynamique 11.5 Références 12 Opérateurs 12.1 Opérateurs arithmétiques 12.2 Opérateurs logiques booléens 12.3 Opérateurs logiques bit à bit 12.4 Opérateur d'assignation 4 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 12.5 Opérateur d'incrémentation 12.6 Opérateur de comparaison 12.7 Opérateur divers 12.7.1 Opérateur ? 12.7.2 Opérateur objet 12.7.3 Opérateur de résolution de portée 12.7.4 Opérateur de contrôle d'erreur 12.7.5 Opérateur de référence 12.7.6 Opérateur de fonction variadique 12.8 Précédence des opérateurs 12.9 Références 13 Tableaux 13.1 Création de tableau 13.2 Tableau itératifs 13.3 Tableaux associatifs 13.4 Fonctions de lecture 13.4.1 Recherches 13.5 Fonctions d'écriture 13.5.1 Tris 13.6 Tableaux multi-dimensionnels 13.7 ArrayAccess 13.8 Destructuration 13.9 Condition 13.10 Références 14 Structures de contrôle 14.1 if - else 14.1.1 Emploi de if seul 14.1.2 Emploi de elseif 14.1.3 Imbrication 14.2 switch 15 Boucles 15.1 Concept 15.2 while 15.2.1 do while 15.3 for 15.3.1 foreach 15.4 break et continue 16 Fonctions 16.1 Déclaration de fonction 16.1.1 Portée des variables 16.1.1.1 Espaces de noms 16.1.2 Références de variables 16.2 Les fonctions variables 16.3 Fonctions usuelles 5 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 16.4 Références 17 Dates 17.1 date() 17.2 strtotime() 17.3 checkdate() 17.4 DateTime 17.4.1 add 17.4.2 diff 17.5 DateTimeImmutable 17.6 DateInterval 17.7 Timestamps 17.7.1 time() 17.7.2 mktime() 17.8 Références 18 Sessions 18.1 Un cookie et une session, quelles différences 18.2 La durée de vie d'une session 18.3 Comment ça marche ? 18.4 Est-ce que c’est sécurisé 18.5 Utiliser les sessions 18.5.1 Initialiser une session 18.5.1.1 Une session portant un nom personnalisé 18.5.1.2 Changer manuellement l'identifiant de la session 18.5.2 Lire et écrire des données dans la session 18.5.2.1 Exercice : Une zone d'administration protégée par mot de passe 18.5.2.1.1 Le formulaire 18.5.2.1.2 La page de vérification 18.5.2.1.3 La page d'administration 18.5.3 Fermer une session 19 Cookies 19.1 Introduction 19.2 Syntaxe 19.3 Exemples 19.4 Références 20 Cache 20.1 Références 21 Memcached 21.1 Fonctionnement 21.2 Utilisation en PHP 21.3 Références 22 Redis 22.1 Commandes 22.2 Utilisation en PHP 22.2.1 Symfony 6 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 22.3 Références 23 Formulaire 23.1 Présentation 23.2 Le formulaire 23.3 Le traitement 23.4 La zone administration 23.5 Types de champ 24 Fichiers 24.1 Dossiers 24.2 Droits des fichiers 24.2.1 Windows 24.2.2 Unix 24.3 Ouvrir un fichier 24.4 Télécharger un fichier 24.5 Zipper un fichier 24.6 Éditer et fermer un fichier 24.7 Copier un fichier 24.8 Supprimer un fichier 24.9 Interagir avec le fichier 24.9.1 Lecture 24.9.1.1 file_get_contents 24.9.1.2 file 24.9.1.3 fgets 24.9.1.4 fgetc 24.9.1.5 fgetcsv 24.9.2 Écriture 24.9.3 Se déplacer 24.10 Fichiers uploadés 24.11 Fichiers temporaires 24.12 Fichiers distants 24.12.1 HTTP 24.12.2 FTP 24.12.3 SFTP 24.12.4 php:// 24.13 Fichiers binaires 24.14 Références 25 Objets COM 25.1 Installation 25.2 Exemple 25.3 Références 26 Images 26.1 Introduction 26.2 Créer une nouvelle image 26.3 Travailler avec les couleurs 26.4 Dessiner des formes 26.5 Retravailler les pixels existants 7 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki... https://fr.wikibooks.org/w/index.php?title=Prog... 26.6 Imprimer l'output 26.7 Exemple 26.8 Références 27 Mails 27.1 Mail() 27.2 Utilisation de Mail() plus complexe... 27.3 Avec la mise en place de pièce jointe 27.4 Bibliothèques 27.5 Références 28 Sécurité 28.1 Chiffrement symétrique 28.2 Hachage 28.3 Références 29 Programmation orientée objet 29.1 Introduction 29.2 Définition des classes 29.3 Utilisation d’un objet 29.4 Héritage 29.4.1 Traits 29.5 Classes abstraites 29.6 Closures 29.7 Classes anonymes 29.8 Interfaces 29.9 Namespaces 29.10 Portée des variables 29.11 Les méthodes prédéfinies 29.11.1 Constructeur et destructeur 29.11.2 Copie en profondeur 29.11.3 __get, __set, __call 29.11.3.1 __call() 29.11.3.2 _get() 29.11.3.3 __set() 29.11.4 __autoload() 29.11.5 __sleep() et __wakeup() 29.11.6 __invoke() 29.12 Quelques fonctions intégrées 29.12.1 class_exists() 29.12.2 get_class_methods() 29.12.3 get_class_vars() 29.12.4 get_object_vars() 29.12.5 method_exists($classe, $méthode) 29.12.6 serialize() et unserialize() 29.13 Références 30 Bonnes pratiques 30.1 Conventions de codage 30.1.1 PSR-1 : conventions de codages basiques 8 sur 419 30/10/2019 à 23:06 Programmation PHP/Version imprimable — Wiki..