Apprendre à coder sur pierre-giraud.com

DES COURS COMPLETS ET GRATUITS POUR TOUS

SOMMAIRE

Introduction

  1. Présentation du cours
  2. Introduction au PHP
  3. Mettre en place un env. de travail

Les bases en PHP

  1. Syntaxe de base du PHP
  2. Premières instructions PHP
  3. Introduction aux variables PHP
  4. Types de valeurs et concaténation
  5. Opérations sur les variables
  6. Conditions et opérateurs de comparaison
  7. Les conditions if, if...else et if... elseif... else
  8. Utilisation avancée des conditions
  9. Structures ternaires et switch
  10. Les boucles PHP
  11. Découverte des fonctions
  12. La portée des variables
  13. Les constantes PHP
  14. Les variables tableaux PHP
  15. Tableaux associatifs
  16. Tableaux multidimensionnels
  17. Test n°1

Gestion des dates en PHP

  1. Le timestamp
  2. Obtenir et formater une date
  3. Tester la validité d'une date
  4. Test n°2

Opérations sur les fichiers en PHP

  1. Lire, ouvrir, fermer un fichier
  2. Parcourir et lire un fichier par partie
  3. Créer un fichier et écrire dedans
  4. Ecrire dans un fichier
  5. Les instructions include et require
  6. Test n°3

Les variables superglobales

  1. Découverte des variables superglobales
  2. Les cookies
  3. Les sessions
  4. Test n°4

Les expressions régulières et PHP

  1. Découverte des regex
  2. Les fonctions PHP PCRE
  3. Quantifieurs et options
  4. Classes de caractères
  5. Test n°5

L'orienté objet en PHP

  1. Classes, instances et objets
  2. Propriétés et méthodes
  3. Extension de classe et héritage
  4. Le principe d'encapsulation
  5. La méthode constructeur
  6. L'opérateur de résolution de portée et la surcharge
  7. Constantes, méthodes et propriétés statiques
  8. Les classes et méthodes abstraites
  9. Les interfaces
  10. Les méthodes magiques
  11. Le chainage de méthodes
  12. Test n°6

Notions avancées en POO

  1. Le typage explicite
  2. Les traits
  3. Les closures et les classes anonymes
  4. L'auto-chargement des classes
  5. Le mot clef final
  6. Résolution statique à la volée
  7. Parcourir des objets
  8. Le clonage d'objets
  9. Comparaison d'objets
  10. Test n°7

Filtres, erreurs et exceptions

  1. Introduction aux filtres
  2. Utilisation pratique des filtres
  3. Gérer les erreurs en PHP
  4. Gérer les exceptions en PHP

PRESENTATION DES VARIABLES SUPERGLOBALES PHP

Les variables superglobales PHP

Les variables superglobales PHP sont des variables créées automatiquement par le PHP lui-même.

La grande différence avec les variables « classiques » est que les superglobales vont être accessibles n'importe où dans un script, que ce soit dans l'espace global ou local.

Une bonne connaissance et compréhension des variables superglobales sont essentielles à tout bon développeur PHP, car ces variables vont nous être très utiles dans de nombreuses situations.

Il n’existe que neuf variables superglobales en PHP. En voici la liste :

  • $GLOBALS ;
  • $_SERVER ;
  • $_REQUEST ;
  • $_GET ;
  • $_POST ;
  • $_FILES ;
  • $_ENV ;
  • $_COOKIE ;
  • $_SESSION.

Vous remarquez que les superglobales s’écrivent en majuscule. C’est une convention qui a été adoptée afin de bien les différencier des variables classiques.

Vous pouvez noter également que toutes les superglobales commencent par un underscore à l’exception de la superglobale $GLOBALS.

Dans la suite de cette partie, nous allons décrire brièvement ce qu’apporte chaque superglobale. Nous reverrons ensuite la majorité de ces superglobales plus en détail dans des chapitres dédiés.

La superglobale $GLOBALS

La superglobale $GLOBALS va nous permettre d'avoir accès à des variables définies dans l’espace global depuis n’importe où dans notre script, même depuis l’intérieur d’une fonction.

Rappelez vous : lorsque nous avons parlé de la portée des variables, nous avons vu que le mot clef global permettait justement d’accéder localement à une variable définie dans l’espace global.

Ce mot clef provient avant tout de la superglobale $GLOBALS.

En effet, vous devez savoir que le PHP va automatiquement stocker toutes les variables définies dans l’espace global d’un script au sein d’un tableau... qui va être stocké dans notre superglobale $GLOBALS !

Ce tableau est un tableau associatif avec les noms de variables en clefs ou en indices et leurs valeurs associées en valeurs du tableau.

Cette variable superglobale et donc les différentes valeurs qu'elle contient vont tableau être accessibles depuis n’importe où dans le script, et on va donc pouvoir accéder à la valeur d'une variable en particulier en précisant $GLOBALS['nom-de-ma-variable'].

Jusqu’à présent, nous procédions comme ceci pour accéder localement à des variables définies dans l’espace global :

Utilisation du mot clef global en PHP

On accède localement à nos variables globales en PHP grâce au mot clef global

Cela fonctionne parfaitement bien. Cependant, maintenant que nous connaissons la superglobale $GLOBALS et son fonctionnement, nous allons pouvoir arriver à un résultat similaire en écrivant plus simplement ceci :

Utilisation de la superglobale $GLOBALS en PHP

On peut utiliser la superglobale $GLOBALS pour accéder à nos variables globales depuis l’espace local d’une fonction en PHP

On sait que le PHP crée automatiquement une variable tableau $GLOBALS contenant toutes les variables que nous avons défini dans l’espace global.

On sait également qu’on va pouvoir utiliser ce tableau pour accéder à nos variables définies dans l’espace global localement.

Pour cela, il suffit de préciser le nom de la variable à laquelle on souhaite accéder (sans le signe dollar) en clef de notre tableau $GLOBALS.

La superglobale $_SERVER

La variable superglobale $_SERVER contient des informations relatives au serveur, au script et à notre architecture.

Cette superglobale contient à nouveau un tableau. En lui fournissant telle ou telle clef, elle va nous renvoyer une informations précise.

Voici quelques clefs qu’il peut être intéressant de connaître :

Utilisation de la superglobale PHP $_SERVER

On utilise la superglobale PHP $_SERVER pour obtenir des informations sur le serveur et le script

Vu que j’exécute ce script localement, ces valeurs ne sont évidemment pas très intéressantes dans mon cas.

Cependant, elles vont pouvoir s’avérer très utiles dans le cas d’un « vrai » site hébergé sur un serveur.

Notez qu’il est possible que vous n’ayez pas les mêmes valeurs que moi renvoyées par $_SERVER['SERVER_ADDR'] et $_SERVER['REMOTE_ADDR'].

En effet, selon que vous utilisiez une adresse ipv6 ou ipv4, vous pouvez avoir soit la valeur ::1 soit la valeur 127.0.0.1.

La superglobale $_REQUEST

La superglobale $_REQUEST est utilisée par le PHP pour récolter des données après la soumission d’un formulaire.

Nous allons ainsi pouvoir accéder aux informations entrées par les utilisateurs afin de pouvoir les traiter.

Nous reparlerons plus en détail de cette superglobale et verrons comment l’utiliser lorsque nous aborderons le traitement des données des formulaires en PHP.

Les superglobales $_GET et $_POST

Les superglobales $_GET et $_POST vont également être utilisées généralement pour récolter des informations suite à l’envoi d’un formulaire HTML.

On va utiliser $_GET lorsque les données auront été soumises en utilisant la méthode get et $_POST lorsque les données auront été soumises en utilisant la méthode post dans nos formulaires.

Une nouvelle fois, nous étudierons plus en détail le fonctionnement de ces superglobales lorsque nous aborderons les formulaires.

La superglobale $_ENV

La superglobale $_ENV va contenir des informations liées à l’environnement dans lequel s’exécute le script.

Cette variable est une nouvelle fois une variable tableau. Celle-ci va pouvoir contenir, par exemple, le nom de l’utilisateur qui exécute le script si celui-ci est accessible.

Utilisation de la superglobale PHP $_ENV

On utilise la superglobale $_ENV en PHP pour récupérer des informations relatives à l’environnement

La superglobale $_FILES

La superglobale $_FILES va contenir des informations sur un fichier téléchargé, comme le type du fichier, sa taille, son nom, etc.

On pourra donc utiliser cette superglobale lorsqu’on offre la possibilité à nos utilisateurs de nous envoyer des fichiers, afin d’obtenir des informations sur les fichiers envoyés ou même pour filtrer et interdire l’envoi de certains fichiers.

Les superglobales $_COOKIE et $_SESSION

Nous allons utiliser les superglobales $_COOKIE et $_SESSION pour récupérer et maniupler des informations relatives aux cookies et aux sessions en PHP.

Nous allons traiter exclusivement de ces deux sujets dans les deux prochains chapitres de ce cours. Nous découvrirons donc plus en détail comment utiliser ces deux superglobales dans les chapitres suivants.

Chapitre précédent

Chapitre suivant