Les opérateurs arithmétiques
Tableau 7-1. Les opérateurs arithmétiques
exemple |
nom |
résultat |
$a + $b |
Addition |
Somme de $a et $b. |
$a - $b |
Soustraction |
Reste de la soustraction de $b sur $a. |
$a * $b |
Multiplication |
Produit de $a et $b. |
$a / $b |
Division |
Dividende de $a par $b. |
$a % $b |
Modulo |
Reste de la division de $a par $b. |
Les opérateurs sur les chaînes de caractères
Il n'y a réellement qu'un opérateur sur les chaînes de caractères -- l'opérateur de concaténation (".").
$a = "Hello ";
$b = $a . "World!"; // Maintenant $b = "Hello World!"
Les opérateurs d'assignement
L'opérateur d'assignement le plus simple est le signe "=". Le premier réflexe est de penser que ce signe veut dire "égal à". Ce n'est pas le cas. Il signifie que l'opérande de gauche se voit affecter la valeur de l'expression qui est à droite du signe égal.
La valeur d'une expression d'assignement est la valeur assignée. Par exemple, la valeur de l'expression '$a = 3' est la valeur 3. Cela permet de faire des choses sympas:
$a = ($b = 4) + 5; // $a est maintenant égal à 9, et $b vaut 4.
En plus du simple opérateur d'assignement, il existe des "opérateurs combinés" pour tous les opérateurs arithmétiques et pour les opérateurs sur les chaînes de caractères. Cela permet d'utiliser la valeur d'une variable dans une expression et d'affecter le résultat de cette expression à cette variable. Par exemple:
$a = 3;
$a += 5; // affecte la valeur 8 à la variable $a. (correspond à l'instruction '$a = $a + 5');
$b = "Hello ";
$b .= "There!"; // affecte la valeur "Hello There!" à la variable $b (correspond à $b = $b."There!");
Les opérateurs sur les bits
Les opérateurs sur les bits positionnent ou non certains bits dans un nombre entier.
Tableau 7-2. Les opérateurs sur les bits
exemple |
nom |
résultat |
$a & $b |
ET |
Les bits positionnés à 1 dans $a ET dans $b sont positionnés à 1. |
$a | $b |
OU |
Les bits positionnés à 1 dans $a OU dans $b sont positionnés à 1. |
~ $a |
NON |
Les bits qui sont positionnés à 1 dans $a sont positionnés à 0, et vice versa. |
$a << $b |
Décalage à gauche |
Décale les bits de $a dans $b par la gauche (chaque décalage équivaut à une multiplication par 2). |
$a >> $b |
Décalage à droite |
décalage des bits de $a dans $b par la droite (chaque décalage équivaut à une division par 2). |
Les opérateurs logiques
Tableau 7-3. Les opérateurs logiques
exemple |
nom |
résultat |
$a and $b |
ET |
Vrai si $a ET $b sont vrais |
$a or $b |
OU |
Vrai si $a OU $b est vrai |
$a xor $b |
OU exclusif |
Vrai si $a OU $b est vrai, mais pas les deux en même-temps |
! $a |
NON |
Vrai si $a est faux |
$a && $b |
ET |
Vrai si $a ET $b sont vrais |
$a || $b |
OU |
Vrai si $a OU $b est vrai |
La raison pour laquelle il existe deux types de "ET" et de "OU" est qu'ils ont des priorités différentes. (voir le paragraphe correspondant)
Opérateurs de comparaison
Les opérateurs de comparaison, comme le nom l'indique, vous permettent de comparez deux valeurs.
Tableau 7-4. Les opérateurs de comparaison
exemple |
nom |
résultat |
$a == $b |
Egal à |
Vrai si $a est égale à $b. |
$a != $b |
Différent de |
Vrai si $a est différent de $b. |
$a < $b |
Plus petit que |
Vrai si $a est plus petit strictement que $b. |
$a > $b |
Plus grand que |
Vrai si $a est plus grand strictement que $b. |
$a <= $b |
Plus petit ou égal à |
Vrai si $a est plus petit ou égal à $b. |
$a >= $b |
Plus grand ou égal à |
Vrai si $a est plus grand ou égal à $b. |
Un autre opérateur conditionnel est l'opérateur trinaire (":?"), qui fonctionne comme en langage C.
(expr1) ? (expr2) : (expr3);
Cette expression renvoie la valeur de l'expression expr2 si l'expression expr1 est vrai, et l'expression expr3 si l'expression expr1 est fausse.
La priorité des opérateurs
La priorité des opérateurs spécifie l'ordre dans lequel les valeurs doivent être analysées. Par exemple, dans l'expression 1 + 5 * 3, le résultat est 16 et non 18, car la multiplication ("*") à une priorité supérieure par rapport à à l'addition ("+").
Le tableau suivant dresse une liste de la priorité des différents opérateurs dans un ordre croissant de priorité.
Tableau 7-5. La priorité des différents opérateurs.
Associativité |
Opérateur |
gauche |
, |
gauche |
or |
gauche |
xor |
gauche |
and |
droite |
|
gauche |
= += -= *= /= .= %= &= != ~= <<= >>= |
gauche |
? : |
gauche |
|| |
gauche |
&& |
gauche |
| |
gauche |
^ |
gauche |
& |
non-associatif |
== != |
non-associatif |
< <= > >= |
gauche |
<< >> |
gauche |
+ - . |
gauche |
* / % |
droite |
! ~ ++ -- (int) (double) (string) (array) (object) @ |
droite |
[ |
non-associatif |
new |
Révisé le :23-Jan-2008| ©2008 www.technologuepro.com