Flux rss

PHP - Les opérateurs


Qu'est-ce qu'un opérateur?

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 :

  • les opérateurs de calcul
  • les opérateurs d'assignation
  • les opérateurs d'incrémentation
  • les opérateurs de comparaison
  • les opérateurs logiques
  • (les opérateurs bit-à-bit)
  • (les opérateurs de rotation de bit)

Les opérateurs de calcul

Les opérateurs de calcul permettent de modifier mathématiquement la valeur d'une variable

Opérateur Dénomination Effet Exemple Résultat
(pour x=7)
+ opérateur d'addition Ajoute deux valeurs $x+3 10
- opérateur de soustraction Soustrait deux valeurs $x-3 4
* opérateur de multiplication Multiplie deux valeurs $x*3 21
/ plus: opérateur de division Divise deux valeurs $x/3 2.3333333
= opérateur d'affectation Affecte une valeur à une variable $x=3 Met la valeur 3 dans la variable $x
% opérateur modulo Donne le reste de la division entière entre 2 nombres $x%3 1

Les opérateurs d'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ération 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

Les opérateurs d'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 Résultat (avec x valant 7)
++ Incrémentation Augmente d'une unité la variable $x++ 8
-- Décrémentation Diminue d'une unité la variable $x-- 6

Les opérateurs de comparaison

Opérateur Dénomination Effet Exemple Résultat
==
A ne pas confondre avec le signe d'affectation (=)!!
opérateur d'égalité Compare deux valeurs et vérifie leur égalité $x==3 Retourne 1 si $x est égal à 3, sinon 0
< opérateur d'infériorité stricte Vérifie qu'une variable est strictement inférieure à une valeur $x<3 Retourne 1 si $x est inférieur à 3, sinon 0
<= opérateur d'infériorité Vérifie qu'une variable est inférieure ou égale à une valeur $x<=3 Retourne 1 si $x est inférieur ou égale à 3, sinon 0
> opérateur de supériorité stricte Vérifie qu'une variable est strictement supérieure à une valeur $x>3 Retourne 1 si $x est supérieur à 3, sinon 0
>= opérateur de supériorité Vérifie qu'une variable est supérieure ou égale à une valeur $x>=3 Retourne 1 si $x est supérieur ou égal à 3, sinon 0
!= opérateur de différence Vérifie qu'une variable est différente d'une valeur $x!=3 Retourne 1 si $x est différent de 3, sinon 0

Les opérateurs logiques (booléens)

Ce type d'opérateur permet de vérifier si plusieurs conditions sont vraies :

Opérateur Dénomination Effet Syntaxe
|| ou OR OU logique Vérifie qu'une des conditions est réalisée ((condition1)||(condition2))
&& ou AND ET logique Vérifie que toutes les conditions sont réalisées ((condition1)&&(condition2))
XOR OU exclusif Vérifie qu'une et une seule des conditions est réalisée ((condition1)XOR(condition2))
! NON logique Inverse l'état d'une variable booléenne (retourne la valeur 1 si la variable vaut 0, 0 si elle vaut 1) (!condition)

(Les opérateurs bit-à-bit)

Si vous ne comprenez pas ces opérateurs cela n'est pas important, vous n'en aurez probablement pas l'utilité. Pour ceux qui voudraient comprendre, rendez- vous aux chapitres suivants :

Ce type d'opérateur traite ses opérandes comme des données binaires, plutôt que des données décimales, hexadécimales ou octales. Ces opérateurs traitent ces données selon leur représentation binaire mais retournent des valeurs numériques standard dans leur format d'origine.

Les opérateurs suivants effectuent des opérations bit-à-bit, c'est-à-dire avec des bits de même poids.

Opérateur Dénomination Effet Syntaxe Résultat
& ET bit-à-bit Retourne 1 si les deux bits de même poids sont à 1 9 & 12 (1001 & 1100) 8 (1000)
| OU bit-à-bit Retourne 1 si l'un ou l'autre des deux bits de même poids est à 1 (ou les deux) 9 | 12 (1001 | 1100) 13 (1101)
^ OU exclusif Retourne 1 si l'un des deux bits de même poids est à 1 (mais pas les deux) 9 ^ 12 (1001 ^ 1100) 5 (0101)
~ Complément (NON) Retourne 1 si le bit est à 0 (et inversement) ~9 (~1001) 6 (0110)

(Les opérateurs de rotation de bit)

Si vous ne comprenez pas ces opérateurs cela n'est pas important, vous n'en aurez probablement pas l'utilité. Pour ceux qui voudraient comprendre, rendez- vous aux chapitres suivants :

Ce type d'opérateur traite ses opérandes comme des données binaires d'une longueur de 32 bits, plutôt que des données décimales, hexadécimales ou octales. Ces opérateurs traitent ces données selon leur représentation binaire mais retournent des valeurs numériques standards dans leur format d'origine.

Les opérateurs suivants effectuent des rotations sur les bits, c'est-à-dire qu'il décale chacun des bits d'un nombre de bits vers la gauche ou vers la droite. La première opérande désigne la donnée sur laquelle on va faire le décalage, la seconde désigne le nombre de bits duquel elle va être décalée.

Opérateur Dénomination Effet Syntaxe Résultat
<< Rotation à gauche Décale les bits vers la gauche (multiplie par 2 à chaque décalage). Les zéros qui sortent à gauche sont perdus, tandis que des zéros sont insérés à droite 6 << 1 (110 << 1) 12 (1100)
>> Rotation à droite avec conservation du signe Décale les bits vers la droite (divise par 2 à chaque décalage). Les zéros qui sortent à droite sont perdus, tandis que le bit non-nul de poids plus fort est recopié à gauche 6 >> 1 (0110 >> 1) 3 (0011)

Autres opérateurs

Les opérateurs ne peuvent pas être classés dans une catégorie spécifique mais ils ont tout de même chacun leur importance!

Opérateur Dénomination Effet Syntaxe Résultat
. Concaténation Joint deux chaînes bout à bout "Bonjour"."Au revoir" "BonjourAu revoir"
$ Référencement de variable Permet de définir une variable $MaVariable = 2;  
-> Propriété d'un objet Permet d'accéder aux données membres d'une classe $MonObjet->Propriete  

Les priorités

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

Priorité des opérateurs
+++++++++++++++ () []                    
++++++++++++++ -- ++ ! ~ -              
+++++++++++++ * / %                  
++++++++++++ + -                    
+++++++++++ < <= >= >                
++++++++++ == !=                    
+++++++++ &                      
++++++++ ^                      
+++++++ |                      
++++++ &&                      
+++++ ||                      
++++ ? :                    
+++ = += -= *= /= %= <<= >>= >>>= &= ^= |=
++ AND                      
+ XOR                      

Ce document intitulé « PHP - Les opérateurs » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
 
PHP - Introduction PHP est un langage interprété (un langage de script) exécuté du côté serveur (comme les scripts CGI, ASP, ...) et non du côté client (un script écrit en Javascript ou une applet Java s'exécute sur votre ordinateur...). La syntaxe du langage provient... www.commentcamarche.net/php/phpintro.php3
PHP - Les fichiers Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier est repérée par une variable, indiquant... www.commentcamarche.net/php/phpfich.php3
PHP - Récupération de données PHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des cases à cocher des boutons... www.commentcamarche.net/php/phpform.php3
[PHP] Upload de fichiersLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La... www.commentcamarche.net/faq/sujet-889-php-upload-de-fichiers
[PHP] Notice: Undefined index:Si vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line... www.commentcamarche.net/faq/sujet-1391-php-notice-undefined-index
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';'Cette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple : www.commentcamarche.net/faq/sujet-869-php-parse-error-unexpected-t-string-expecting-or
Ouverture fichier PHP (Résolu)Bonjour a tous je viens de faire ma 1ere page en php j'ai windows 2000, et le logiciel easyphp mon fichier a ete enregistré avec l'extension .php mais lorsque je veux l'ouvrir il me demande avec quel programme, j'ai mis easyphh,... www.commentcamarche.net/forum/affich-1969899-ouverture-fichier-php
Php Warning: Cannot modify header information (Résolu)bonjour, j ai code php qui dans une premiere version dite en "dur" qui marche tres bien. Le probleme pour sa reutilisation et sa maintenace plus aisee, je souhaite remplacer mes parametres en "dur" par des variables php. J ai donc proceder un la... www.commentcamarche.net/forum/affich-1257704-php-warning-cannot-modify-header-information
Comment récupérer l'url d'une page php ? (Résolu)Bonjour, je cherche comment récupérer l'url de la page web, dans laquelle une personne se trouve. Quelle fonction existe-t-il en php ? Merci d'avance pour votre aide. www.commentcamarche.net/forum/affich-1557182-comment-recuperer-l-url-d-une-page-php
Télécharger PHP EditPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des... www.commentcamarche.net/telecharger/telecharger-62-php-edit
PHP - Les structures conditionnelles On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0 ou 1 (le PHP associe le mot clé true à 1 et false à 0). Ces structures conditionnelles... www.commentcamarche.net/php/phpcond.php3
PHP - Les variables Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois types : scalaires tableaux tableaux associatifs Quelque soit... www.commentcamarche.net/php/phpvar.php3
PHP - Connexion à une base de données Php permet un interfaçage très simple avec un grand nombre de bases de données. Lorsqu'une base de données n'est pas directement supportée par Php, il est possible d'utiliser un driver ODBC, pilote standard pour communiquer avec les bases de données.... www.commentcamarche.net/php/phpbdd.php3
Toutes les réponses pour « PHP »