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 ("*") a 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 10-1. Précédence des opérateurs
Associativité | Opérateurs |
---|---|
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 |
Note : Bien que ! soit prioritaire sur =, PHP va tout de même exécuter des expressions comme : if (!$a = foo()). Dans cette situation, le résultat de foo() sera placé dans la variable $a.
Précédent | Sommaire | Suivant |
Les expressions | Niveau supérieur | Les opérateurs arithmétiques |