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

UTILISATION AVANCEE DES CONDITIONS EN PHP

Utiliser les opérateurs logiques avec ses conditions

Souvent, nous allons vouloir comparer plusieurs valeurs au sein d’une même condition.

Pour faire cela, nous allons devoir utiliser des opérateurs logiques. Voici ci-dessous la liste des opérateurs logiques et leur signification dans le contexte de la création d'une condition.

Opérateur Signification
AND (ou &&) PHP renvoie true (false) seulement si toutes les comparaisons sont évaluées à true (false)
OR (ou ||) PHP renvoie true (false) si l’une des comparaisons est évaluée à true (false)
XOR PHP renvoie true (false) si uniquement l’une des comparaisons est évaluée à true (false)
! Inverse la valeur logique d’un test

Comme vous pouvez le constater, les opérateurs logiques AND et OR peuvent s’écrire de deux façons différentes : soit sous forme de mot, soit avec les signes && et ||. Dans ce cours, nous préférerons les écrire sous forme de mot (cela est plus clair).

Entrainons nous immédiatement avec ces opérateurs afin de bien les comprendre.

Utilisation des opérateurs logiques avec les conditions en PHP

Les opérateurs logiques nous permettent d’effectuer plusieurs tests dans nos conditions en PHP

Le code ci-dessus est suffisamment commenté pour que vous puissiez bien comprendre chaque exemple.

Notez qu’on va pouvoir utiliser les opérateurs logiques pour encadrer une variable (par exemple demander à PHP de ne renvoyer true que si une variable contient une valeur comprise entre tel et tel nombre) ou pour comparer les valeurs de plusieurs variables dans une même condition.

On va également tout à fait pouvoir combiner différents opérateurs logiques au sein d’une même structure.

Dans ce cas là, cependant, faites bien attention aux différentes priorités des opérations et à utiliser des parenthèses pour prioriser les opérations comme vous le souhaitez.

Note : ce qui est placé entre parenthèses sera traité de manière prioritaire, sous forme de « bloc » par rapport au reste.

On utilise les parenthèses pour choisir les priorités d’opérations en PHP

Lorsqu’on utilise plusieurs opérateurs logiques dans une condition en PHP, il est préférable d’utiliser des parenthèses

Comme vous pouvez le voir ci-dessus, le placement des parenthèses peut complètement changer le résultat d’une condition !

Dans le premier cas, l’un des deux critères entre la deuxième paire de parenthèses doit être satisfait et le critère hors parenthèses doit l’être également pour que notre message s’affiche.

Dans le deuxième cas, il suffit que le critère hors parenthèses ou que les deux critères dans le deuxième couple de parenthèses soient vérifiés pour que notre message s’affiche.

Faites donc très attention à la construction de vos conditions si vous utilisez plusieurs opérateurs logiques à l’intérieur de celles-ci !

Imbriquer des conditions en PHP

Il est tout à fait possible d’imbriquer plusieurs conditions l’une dans l’autre en PHP.

Dans certains cas particuliers, il peut être plus intéressant d’imbriquer des conditions que d’utiliser des opérateurs logiques, notamment pour éviter de répéter plusieurs fois le même test (ce qui ralentirait l’exécution du code).

Imbrication de conditions en PHP

Dans certains cas, il peut être intéressant d’imbriquer des conditions l’une dans l’autre en PHP

Dans cet exemple, on veut tester les critères « utilisateur inscrit ou non » et « utilisateur majeur ou non » et répondre de façon différente en fonction de chaque situation.

La façon la plus simple de faire cela est de créer une première condition if… else et d’imbriquer une deuxième structure if… else à l'intérieur du premier if.

On ne rentre dans le deuxième if… else que si le premier if est satisfait, c’est-à-dire si notre utilisateur est bien inscrit.

Notez par ailleurs que comme dans notre cas notre variable $inscrit stocke une valeur booléenne, il est évident que l'on n’a pas besoin de faire de comparaison explicite, puisque sa valeur peut être directement comparée à true.

Chapitre précédent

Chapitre suivant