Les operateurs du langage PHP

I. Définitions

 

II. Arithmétiques

 

III. Assignation

 

IV. Incrémentation

 

V.Logiques

VI.   Comparaisons

 

VII.  Les opérateurs sur bits

 

VIII. Les autres opérateurs

 

IX.   Les priorités

I. Définitions

Les opérateurs sont des symboles qui permettent de manipuler des variables, c'est-à-dire effectuer des opérations, les évaluer, ...

On distingue plusieurs types d'opérateurs:


II.  Arithmétiques

Signification Exemple Résultats
Addition $a + $b Somme de $a et $b
Soustraction $a - $b Reste de la soustraction de $b sur $a
Multiplication $a * $b Produit de $a et $b
Division $a / $b Dividende de $a par $b
Modulo $a % $b Reste de la division de $a par $b


III. Assignation

Ces opérateurs permettent de simplifier des opérations telles que ajouter une valeur dans une variable et stocker le résultat dans la variable. Une telle opérations s'écrirait habituellement de la façon suivante par exemple: $x=$x+2


Avec les opérateurs d'assignation il est possible d'écrire cette opération sous la forme suivante: $x+=2


Ainsi, si la valeur de x était 7 avant opération, elle sera de 9 après...

Les autres opérateurs du même type sont les suivants:

Opérateur Effet
+= addition deux valeurs et stocke le résultat dans la variable (à gauche)
-= soustrait deux valeurs et stocke le résultat dans la variable
*= multiplie deux valeurs et stocke le résultat dans la variable
/= divise deux valeurs et stocke le résultat dans la variable
%= donne le reste de la division deux valeurs et stocke le résultat dans la variable
|= Effectue un OU logique entre deux valeurs et stocke le résultat dans la variable
^= Effectue un OU exclusif entre deux valeurs et stocke le résultat dans la variable
&= Effectue un Et logique entre deux valeurs et stocke le résultat dans la variable
.= Concatène deux chaînes et stocke le résultat dans la variable


IV. Incrémentation

Ce type d'opérateur permet de facilement augmenter ou diminuer d'une unité une variable. Ces opérateurs sont très utiles pour des structures telles que des boucles, qui ont besoin d'un compteur (variable qui augmente de un en un).

Un opérateur de type $x++ permet de remplacer des notations lourdes telles que $x=$x+1 ou bien $x+=1

Opérateur Dénomination Effet Syntaxe  
++ Incrémentation Augmente d'une unité la variable $x++ 8
-- Décrémentation Diminue d'une unité la variable $x-- 6

Résultat (avec x valant 7)


V. Logiqes

Signification Exemple Résultats
ET $a and $b ou bien $a && $b Vrai si $a ET $b sont vrais
OU $a or $b ou bien $a || $b Vrai si $a OU $b est vrai
OU exclusif $a xor $b Vrai si $a OU $b est vrai, mais pas les deux en même temps
NON ! $a Vrai si $a est faux


VI. Comparaisons

Ils comparent des valeurs (numériques, textes, etc) et renvoient une valeur logique. Les opérateurs logiques combinent par des opérations booléennes des valeurs vraies ou fausses.

Signification Exemple Résultats
Egal à $a == $b Vrai si $a est égal à $b.
Différant de $a != $b Vrai si $a est différent de $b.
Plus petit que $a < $b Vrai si $a est strictement plus petit que $b.
Plus grand que $a > $b Vrai si $a est strictement plus grand que $b.
Plus petit ou égal à $a <= $b Vrai si $a est plus petit ou égal à $b.
Plus grand ou égal à $a >= $b Vrai si $a est plus grand ou égal à $b.


VII. Les opérateurs sur bits

Signification Exemple Résultats
ET $a & $b Les bits positionnés à 1 dans $a ET dans $b sont positionnés à 1.
OU $a | $b Les bits positionnés à 1 dans $a OU dans $b sont positionnés à 1.
OU exclusif $a ^ $b Les bits positionnés à 1 dans $a OU dans $b mais pas les deux sont positionnés à 1.
NON ~ $a Les bits qui sont positionnés à 1 dans $a sont positionnés à 0, et vice versa.
Décalage à gauche $a << $b Décale les bits de $a dans $b par la gauche (chaque décalage équivaut à une multiplication par 2).
Décalage à droite $a >> $b Décalage des bits de $a dans $b par la droite (chaque décalage équivaut à une division par 2).

Ici les opérateurs agissent sur les bits et non pas sur des valeurs vraies ou fausse comme dans le tableau précédent.


VIII. Les autres opérateurs

Opérateur Signification

.

Concaténation
$ Référence à une variable
& Référence à l'adresse d'une variable
-> Référence une méthode ou une propriété d'une classe
=> Paramètre l'argument par défaut ou assigne un index aux éléments d'un tableau
@ Fonction de suppression des erreurs
? Expression conditionnelle tertiaire
` Déclenche l'exécution d'une commande dans l'environnement php. Attention notez bien la différence entre les guillemets simples ' touche 4 et ` touche 7

Affiche l'espace disque sous linux du compte harel

<?
$compte="/home/harel";
echo ` du -cmH $compte | egrep "total$"`;
?>

IX. Les priorités

Lorsque l'on associe plusieurs opérateurs, il faut que le navigateur sache dans quel ordre les traiter, voici donc dans l'ordre décroissant les priorités de tous les opérateurs:

Pour plus de clarté et pour être certain de la priorité des opérations, il est préférable de mettre des parenthèses :

Priorité des opérateurs
  () []                    
  -- ++ ! ~ -              
  * / %                  
  + -                    
  < <= >= >                
  == !=                    
  &                      
  ^                      
  |                      
  &&                      
  ||                      
  ? :                    
  = += -= *= /= %= <<= >>= >>>= &= ^= |=
  AND                      
  XOR                      
$Data = 3+2*7 ($Data vaudra 17)
$Data = (3+2)*7 ($Data vaudra 35)