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

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

OPERATIONS SUR LES VARIABLES EN PHP

Les opérations sur les variables

On va pouvoir effectuer des opérations mathématiques entre les variables en PHP, ou plus exactement entre les contenus de chaque variable.

Dans cette nouvelle partie, nous allons principalement nous concentrer sur des variables contenant des nombres, qu’ils soient entiers ou décimaux pour illustrer ces différentes opérations.

Opérateurs et opérations arithmétiques en théorie

Nous allons pouvoir réaliser toutes sortes d’opérations mathématiques avec les variables en PHP : additions, soustractions, multiplications, etc.

Le tableau ci-dessous regroupe les opérations les plus courantes à notre disposition ainsi que les opérateurs que nous allons utiliser :

Opération Opérateur
Addition +
Soustraction -
Multiplication *
Division /
Modulo %
Exponentiel **

Avant de voir comment tout cela fonctionne en pratique, il convient certainement de définir ce qu’est le modulo.

Le modulo correspond au reste entier d’une division euclidienne. Par exemple, lorsqu’on divise 5 par 3, le résultat est 1 et il reste 2 dans le cas d’une division euclidienne. Le reste, 2, correspond justement au modulo.

L’exponentielle correspond à l’élévation d’un nombre par un autre nombre. C’est également ce qu’on appelle la « puissance » (par exemple, « 2 puissance 3 » est synonyme de « 2 exponentielle 3 » et cela est égal à 2*2*2. Notez que cette opération est très récente en PHP, puisqu’elle a été introduite avec PHP 5.6.

Opérateurs et opérations arithmétiques en pratique

Voyons immédiatement quelques exemple d’opérations simples entre variables, afin de bien comprendre la théorie.

Des opérations simples avec et entre variables

Opérations mathématique entre variables en PHP

Notez qu’ici on aurait pu faire tous les calculs directement au sein de l’instruction echo et ne pas utiliser les variables $add1, $add2, etc. pour stocker les résultats des opérations.

Cependant, il peut être utile de créer de nouvelles variables comme je l’ai fait pour pouvoir retravailler sur les résultats par la suite ou dans le cas où une variable changerait de valeur dans un script.

Dans ce dernier cas, en effet, si une variable change de valeur après qu’on l’ait utilisée pour faire certaines opérations, le résultat des opérations précédentes n’est pas impacté.

Modification de la vlaeur d’une variable et opération

Notre variable stocke différentes valeurs dans le temps

Ce deuxième exemple est un peu plus complexe à appréhender. Pour bien le comprendre, vous devez vous rappelez que le signe « = » (égal) est un opérateur d’affection et non pas d’égalité.

La signification n’est pas « la variable $x est égale à 4 » par exemple mais bien « On affecte le chiffre 4 à $x » ou encore « On stocke la valeur 4 dans $x ».

Ainsi, à chaque opération impliquant $x, on va utiliser la dernière valeur connue contenue dans $x. Rappelez vous que le propre d’une variable est de pouvoir varier, ce qui signifie qu’on va pouvoir affecter de nouvelles valeurs à $x au fil du script (et donc écraser les précédentes).

Dans notre premier calcul, c’est la valeur initiale contenue dans $x qui est utilisée, c’est-à-dire 4.

Ensuite, on stocke le nombre 6 dans $x. Cela n’impacte pas les opérations déjà réalisées, c’est-à-dire notre première addition.

Pour le calcul de notre deuxième addition, c’est la dernière valeur connue de $x qui est utilisée, à savoir 6.

Finalement, le dernier calcul va utiliser la dernière valeur connue de $x pour affecter une nouvelle valeur à cette même variable.

Le PHP procède de la sorte : il commence par effectuer le calcul à droite du signe égal, c’est-à-dire $x * 2.

Pour réaliser cette opération, il va récupérer la dernière valeur connue contenue dans $x, à savoir 6. Ensuite seulement, il va affecter le résultat de l’opération (6 * 2 = 12) dans la variable $x.

Comme $x possédait déjà une valeur (6), celle-ci est écrasée et remplacée par la nouvelle valeur (12).

Tout ceci est finalement assez logique et simple à comprendre à partir du moment où vous vous persuadez que le signe égal est bien un opérateur d’affectation et non pas d’égalité (auquel cas $x = $x * 2 n’aurait aucun sens d’un point de vue mathématiques).

Les opérateurs d’affectation en PHP

En plus du signe égal, il existe d’autres opérateurs d’affectation « complexes » qui vont nous permettre d’effectuer des opérations arithmétiques et d’affecter le résultat dans une variable d’un coup.

Voici les plus courants et les plus utiles :

Opérateur Rôle
+= Additionne puis affecte
-= Soustrait puis affecte
*= Multiplie puis affecte
/= Divise puis affecte
%= Calcule le modulo puis affecte

Voyons quelques exemples utilisant ces opérateurs afin de voir en pratique comment ils fonctionnent.

Les opérateurs d’affectation complexes en PHP

On peut effectuer un calcul et affecter un résultat à une variable en une étape en PHP

Ces opérateurs vont s’avérer très pratique dans de nombreux cas, n’hésitez donc pas à bien vous entrainer avec.

Les opérations d'incrémentation et de décrémentation

On va encore pouvoir incrémenter ou décrémenter une variable grâce aux signes ++ et --.

Incrémenter une valeur signifie ajouter 1 à cette valeur tandis que décrémenter signifie enlever 1.

Les opérations d’incrémentation et de décrémentation vont être surtout utilisées avec les boucles en PHP. Nous verrons les boucles dans une prochaine partie, et aurons donc le temps de reparler de ces opérations.

Retenez cependant déjà qu’il y a deux façons d’incrémenter ou de décrémenter une variable : on peut soit incrémenter / décrémenter avant de retourner la valeur, soit retourner la valeur puis incrémenter ou décrémenter.

Cette différence d'ordre de traitement des opérations va influer sur le résultat de nombreux codes, tenez en bien compte à chaque fois que vous utilisez les opérateurs d'incrémentation ou de décrémentation.

Voici donc les différentes façons de faire :

Opérateur Rôle
++$x Incrémente la valeur contenue dans $x, puis retourne la valeur incrémentée
$x++ Retourne la valeur contenue dans $x, puis incrémente cette valeur
--$x Décrémente la valeur contenue dans $x, puis retourne la valeur décrémentée
$x-- Retourne la valeur contenue dans $x, puis décrémente cette valeur

Voyons quelques exemples ensemble pour bien comprendre comment le PHP procède dans chaque cas.

On peut incrémenter ou décrémenter de deux façons différentes en PHP

Selon l’endroit où l’on place nos signes ++ et --, la valeur renvoyée sera celle de la variable avant ou après incrémentation ou décrémentation

Lisez bien les commentaires que j’ai laissés dans le code pour bien comprendre ce script. Dans cet exemple, on voit bien les différentes priorités de traitement du PHP selon que l’on place les signes ++ et -- avant ou après le nom de notre variable.

En effet, dans un cas, c’est la valeur post-incrémentation ou décrémentation qui va être renvoyée et affichée dans l’instruction en cours, tandis que dans l’autre cas l’incrémentation ou la décrémentation vont se faire après le renvoi de la valeur dans l’instruction en cours.

A chaque fois, on utilise une instruction médiane pour afficher la valeur contenue dans $x une fois l’incrémentation ou la décrémentation faite afin que vous puissiez bien suivre toutes les étapes.

Chapitre précédent

Chapitre suivant