Créée le, 19/06/2015

 Mise à jour le, 12/05/2019

Visiteurs N°  




Accueil
Nouveau Blog Nouveautés Moteur de Recherche Votre Caddie Pour Vos Achats Votre Espace Membre Vos Signets et Vos Jeux Préférés Page de Bienvenue Statique Site en Français Site en Anglais
Sommaires
Électronique Fondamentale Technologie Fondamentale Testez vos Connaissances Électronique Théorique Digitale Électronique Pratique Digitale Lexique Électronique Numérique Data book TTL Data book CMOS Dépannage TVC Mathématique
Micro-ordinateurs
Théorique des Micro-ordinateurs Testez vos Connaissances Pratique des Micro-ordinateurs Glossaires sur les Ordinateurs
Physique
La lumière Champ d'action Rayonnement Électromagnétique
Technologies
Classification des Résistances Identification des Résistances Classification des Condensateurs Identification des Condensateurs
Formulaires Mathématiques
Géométrie Physique 1. - Électronique 1. 2. - Électronique 1. 3. - Électrotechnique 1. 4. - Électromagnétisme
Accès à tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages N. B. M. - Tome I - 201 Pages E. T. M. - Tome I - 554 Pages Business à Domicile Ouvrages 34 pages gratuits Nos E-books Logiciel Géométrie Logiciel Composants Électroniques
Aperçu de tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages E. T. M. - Tome I - 554 Pages Logiciel Géométrie Logiciel Composants Électroniques
Nos Leçons aux Formats PDF
Électronique Fondamentale Technologie Fondamentale Électronique Théorique Digitale Électronique Pratique Digitale Théorique des Micro-ordinateurs Mathématiques
Informatique
Dépannage Win98 et WinXP et autres Dépannage PC Glossaire HTML et Programmes PHP et Programmes JavaScript (en cours de travaux) Création de plusieurs Sites
Forums
Forum Électronique et Infos Forum Électronique et Poésie
Divers et autres
Formulaire des pages perso News XML Statistiques CountUs Éditeur JavaScript Nos Partenaires et nos Liens Utiles Gestionnaire de Partenariat Nos Partenaires MyCircle Sondages 1er Livre d'Or 2ème livre d'Or

Signets :
  Leçons suivantes        Leçons précédentes     Bas de page
  Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet


Opérateurs Arithmétiques, Opérateurs de Comparaison, Opérateurs Logiques, Opérateurs Bitwise et Divers Opérateurs (3ème partie) :



OPÉRATEURS :

Les opérateurs sont représentés par des symboles, et sont utilisés pour manipuler des valeurs et des variables, en les soumettant à des opérations. Pour calculer les totaux et la taxe du bon de commande du client de Jean-Pierre, nous devons recourir à des opérateurs.

Nous avons déjà mentionné deux opérateurs : l'opérateur de concaténation de chaînes (.) et l'opérateur d'affectation =. Dans cette section, nous allons passer en revue la liste complète des opérateurs disponibles dans le langage PHP.

En général, les opérateurs peuvent prendre un, deux ou trois arguments, la majorité d'entre eux prenant deux arguments. Par exemple, l'opérateur d'affectation prend deux arguments : l'emplacement de stockage spécifié à la gauche du symbole =, et une expression spécifiée à la droite du signe =. Ces arguments sont appelés "opérandes". Un opérande est un élément auquel s'applique l'opérateur.

OPÉRATEURS ARITHMÉTIQUES :

Avant de continuer notre formulaire de commande de chez Jean-Pierre, nous allons voir les opérateurs arithmétiques du langage PHP sont l'évidence même : ils sont tout simplement les opérateurs mathématiques traditionnels. Le tableau de la figure 5 donne la liste des opérateurs arithmétiques simples.

Tableau de la figure 5 - Opérateurs arithmétiques du langage PHP
Opérateur Nom Exemple
+ Addition $a  +  $b
- Soustraction $a  -  $b
* Multiplication $a  *   $b
/ Division $a  /  $b
% Modulo $a  %  $b

Pour chacun de ces opérateurs, nous pouvons stocker le résultat de l'opération, par exemple :

    $Resultat = $a + $b ;

L'addition et la soustraction fonctionnent comme nous pouvons nous y attendre. Ces opérateurs conduisent respectivement à l'addition et à la soustraction des valeurs stockées dans les variables $a et $b.

L'opérateur de soustraction (-) s'utilise également comme opérateur unaire (c'est-à-dire qui ne prend qu'un seul opérande) pour spécifier des nombres négatifs, comme dans l'exemple suivant :

    $a = -1 ;

Le fonctionnement de la multiplication et de la division est lui aussi le fonctionnement attendu. Notez l'usage du caractère astérisque (*) pour l'opérateur de multiplication, au lieu du symbole classique de multiplication, et l'usage de la barre oblique pour l'opérateur de division, au lieu du symbole classique de la division.

L'opérateur modulo renvoie le reste de la division de la variable $a par la variable $b. Soit le fragment de code suivant :

    $a = 47 ;

    $b = 10 ;

    $Resultat = $a%$b ;

La valeur stockée dans la variable $Resultat est le reste obtenu après division de 47 par 10, c'est-à-dire 7, donc, il reste 7.

Les opérateurs arithmétiques sont généralement appliqués à des entiers ou à des nombres réels (double). Lorsqu'ils sont appliqués à des chaînes, l'interpréteur PHP tente de convertir les chaînes en nombres. Lorsque les chaînes contiennent un "e", ou un "E", PHP les convertit en nombres réels, sinon, il les convertit en nombres entiers. PHP examine si des chiffres forment le début de la chaîne, et, si c'est le cas, les utilise comme valeur numérique. Si ce n'est pas le cas, l'interpréteur PHP convertit la chaîne en la valeur zéro.

OPÉRATEUR DE CHAÎNES :

Nous avons déjà vu l'unique opérateur de chaîne admis par le langage PHP : l'opérateur (.) de concaténation de chaînes. Cet opérateur s'emploie pour accoler deux chaînes l'une à l'autre. Il génère et stocke son résultat à la manière de l'opérateur d'addition.

    $a = "<BR> <H1> <b> &nbsp;&nbsp;&nbsp; Les composants Électroniques &nbsp;" ;

    $b = "de chez Jean-Pierre !!!" ;

    $Resultat = $a . $b ;

    echo $Resultat ;

Après l'exécution de ces instructions, la variable $Resultat contient la chaîne de caractères ci-après : "Les composants Électroniques de chez Jean-Pierre !!!".

N.B. : &nbsp; donne un espace pour séparer les caractères, et, pour visualiser l'aperçu, en cliquant ici.

OPÉRATEURS D'AFFECTATION :

Nous avons déjà évoqué l'opérateur d'affectation =. Cet opérateur doit toujours être désigné comme étant l'opérateur d'affectation, et se lit comme "est ajustée sur". Par exemple :

    $TotalQty = 0 ;

Se lit comme "$TotalQty est ajustée sur la valeur zéro". Nous reviendrons sur ce point un peu plus loin dans cette leçon, lorsque nous étudierons les opérateurs de comparaison.

Valeurs renvoyées après évaluation d'instructions d'affectation :

Lorsque l'opérateur d'affectation est appliqué, l'interpréteur PHP renvoie une valeur, comme il le fait avec les autres opérateurs. Ainsi, l'exécution de l'expression suivante :

    $a + $b ;

Renvoie la valeur obtenue, en ajoutant la variable $a à la variable $b. De la même manière, l'exécution de l'expression suivante :

    $a = 0 ;

Renvoie la valeur zéro.

De ce fait, vous pouvez implémenter des calculs tels que :

    $b = 8 + ($a = 5) ;

Cette expression produit la valeur 13, affectée à la variable $b. Ce principe est vrai pour toutes les affectations : la valeur d'une instruction d'affectation est la valeur affectée à l'opérande spécifié à la gauche de l'opérateur.

Lors de l'écriture d'une expression arithmétique, vous pouvez employer des parenthèses pour forcer la priorité d'une sous-expression, comme dans la ligne de code donné ci-dessus. Le principe est ici exactement le même qu'en mathématiques.

Opérateurs d'affectation combinés :

En sus de l'opérateur d'affectation, le langage PHP admet tout un ensemble d'opérateurs d'affectation combinés. Chacun de ces opérateurs combinés constitue une solution raccourcie pour effectuer une opération spécifique sur une variable, et pour affecter en retour le résultat à cette variable. Ainsi, l'expression suivante :

    $a = += 5 ;

Est équivalente à l'expression :

    $a = $a + 5 ;

Il existe des opérateurs d'affectation combinés pour chaque opérateur arithmétique et pour l'opérateur de concaténation de chaîne.

Le tableau de la figure 6 dresse une vue récapitulative de tous les opérateurs d'affectation combinés et de leurs effets.

Tableau de la figure 6 - Opérateurs d'affectation combinés
Opérateur Exemple Équivalent à
+ = $a   + =  $b $a  = $a  +  $b
- = $a  - =  $b $a  = $a  -  $b
* = $a  * =  $b $a  = $a  *  $b
/ = $a  / =  $b $a  = $a  /  $b
% = $a  % =  $b $a  = $a  %  $b
. = $a  . =  $b $a  = $a  .  $b

Opérateurs de pré/post-incrémentation et de pré/post-décrémentation :

Les opérateurs de pré/post-incrémentation (++) et de pré/post-décrémentation (--) sont équivalents aux opérateurs + = et - =, à quelques détails près.

Tous les opérateurs d'incrémentation ont deux effets : d'une part, ils incrémentent, d'autre part, ils affectent une valeur. Soit les instructions suivantes :

    $a = 4 ;

    echo ++$a ;

La seconde instruction comprend l'opérateur de pré-incrémentation, ainsi nommé parce qu'il figure avant l'opérande $a. Lorsque l'interpréteur PHP rencontre cet opérateur, il commence par incrémenter $a par 1, puis il renvoie la valeur ainsi incrémentée.

Dans ce cas précis, $a est incrémentée à la valeur 5, puis la valeur 5 est renvoyée et imprimée. La valeur de l'expression complète est 5 (notez que la valeur réellement stockée dans $a a été modifiée : PHP ne se contente pas de renvoyer simplement $a + 1).

Lorsque l'opérateur (++) figure après l'opérande, il est qualifié d'opérateur de post-incrémentation. L'effet produit est différent. Soit les instructions suivantes :

    $a = 4 ;

    echo $a++ ;

Dans ce cas précis également, l'interpréteur PHP accomplit le traitement inverse : tout d'abord, il renvoie et imprime la valeur de $a, ensuite, il l'incrémente. La valeur de l'expression complète est dans ce cas 4, c'est-à-dire la valeur qui est imprimée. Toutefois, une fois que l'instruction a été exécutée, $a contient la valeur 5.

L'opérateur de décrémentation (--) a un comportement similaire, si ce n'est que la valeur de l'opérande est décrémentée, et non pas incrémentée.

Opérateur de référence :

L'opérateur de référence & (esperluette) est une nouveauté des versions 4 et 5 de PHP. Il peut être utilisé en conjonction avec l'opérateur d'affectation. Dans une affectation standard d'une variable à une autre, l'interpréteur PHP effectue une copie de la première variable, qu'il stocke quelque part dans la mémoire de l'ordinateur. Par exemple, considérez les instructions suivantes :

    $a = 5 ;

    $b = $a ;

Ces lignes de code conduisent à la création d'une copie de $a, et au stockage de cette copie dans $b. Par la suite, si la valeur de $a est modifiée, alors, la valeur de $b reste inchangée :

    $a = 7 ; // $b vaut toujours 5

L'usage de l'opérateur de référence & permet d'éviter de faire une copie, comme le montre l'exemple suivant :

    $a = 5 ;

    $b = &$a ;

    $a = 7 ; // Les variables $a et $b valent à présent toutes deux 7

OPÉRATEURS DE COMPARAISON :

Les opérateurs de comparaison s'emploient pour comparer deux valeurs entre elles. Les expressions contenant de tels opérateurs renvoient les valeurs logiques true (vrai) ou false (faux), selon le résultat de la comparaison.

Opérateur d'égalité :

L'opérateur d'égalité == (deux signes égale) permet de déterminer si deux valeurs sont égales. Par exemple, nous pourrions utiliser l'expression suivante :

    $a == $b ;

Pour tester si les valeurs stockées dans $a et $b sont identiques. L'interpréteur PHP renvoie la valeur true si les valeurs sont égales, et la valeur false si elles sont différentes.

L'opérateur d'égalité se confond facilement avec l'opérateur d'affectation (=). Une telle confusion est d'autant plus dangereuse qu'elle ne provoque pas une erreur, mais conduit seulement à un résultat qui n'est pas celui escompté. En général, les valeurs non nulles sont évaluées comme true, tandis que les valeurs nulles sont évaluées comme false.

Supposons que deux variables soient initialisées de la manière suivante :

    $a = 5 ;

    $b = 7 ;

S'il est amené à tester l'expression $a = $b, l'interpréteur PHP renvoie la valeur true. Pourquoi ? La valeur de l'expression $a = $b est la valeur affectée à l'opérande qui figure sur la gauche de l'opérateur d'affectation, c'est-à-dire ici 7. Cette valeur étant non nulle, l'expression est évaluée comme true. Si votre intention initiale était de tester l'expression $a == $b (au lieu de $a = $b), qui serait évaluée comme false par l'interprétezur PHP, alors, vous avez introduit une erreur logique dans votre code, qui peut se révéler très difficile à détecter. Vous devez par conséquent vous montrer très prudent lorsque vous avez recours à l'opérateur d'affectation ou à l'opérateur d'égalité, et vérifier systématiquement que vous ne confondez pas à ces deux opérateurs.

Cette erreur logique est très courante, et vous vous y heurterez probablement plusieurs fois au cours de votre carrière de programmeur.

AUTRES OPÉRATEURS DE COMPARAISON :

Le Langage PHP comprend tout un jeu d'opérateurs de comparaison. Ceux-ci sont décrits au tableau de la figure 7.

L'opérateur (===) est une nouveauté également depuis les versions 4 et 5. Il renvoie true uniquement si les deux opérandes sont égaux et de même type.

Tableau de la figure 7 - Opérateurs de comparaison du langage PHP
Opérateur Nom Exemple
== égalité $a  ==  $b
=== identique $a  === $b  
! = différent $a  ! =   $b
<> différent $a  <>   $b
< inférieur à $a  <  $b
> supérieur à $a  >  $b
< = inférieur ou égal à $a  < =  $b
> = supérieur ou égal à $a  > =  $b

OPÉRATEURS LOGIQUES :

Les opérateurs logiques s'utilisent pour combiner les résultats de conditions logiques. Par exemple, considérons le cas d'une variable $a dont la valeur est comprise entre 0 et 100. Pour vérifier que la valeur de $a est bien située dans cette plage, il nous faudrait tester les conditions $a >= 0 et $a <= 100, en nous servant de l'opérateur AND de la manière suivante :

    $a >= 0 && <= 100 ;

Le langage PHP comprend les opérateurs logiques AND (et), OR (ou), XOR (ou exclusif) et NOT.

Le tableau de la figure 8 vous décrit ces différents opérateurs.

Tableau de la figure 8 - Opérateurs logiques du langage PHP
Opérateur Nom Exemple Résultat
! NOT ! $b Renvoie true si $b est faux, et vice versa
&& NAND $a &&  $b Renvoie true lorsque $a et $b sont tous deux vrais ; sinon, renvoie false
| | OR $a  | |  $b Renvoie true lorsque soit $a, soit $b est vraie, et lorsque $a et $b sont tous les deux vrais : sinon, renvoie false
and AND $a  and  $b Identique à &&, mais avec une priorité plus basse
or OR $a  or  $b Identique à | |, mais avec une priorité plus basse

Les opérateurs AND et OR sont de plus faible priorité que les opérateurs && et ||. Nous reviendrons sur la notion de priorité des opérateurs un peu plus loin de nos leçons.

OPÉRATEURS BITWISE :

Les opérateurs bitwise permettent de traiter les nombres entiers sous la forme de séries de bits utilisées pour les représenter.

Bien que ces opérateurs soient peu utiles dans le contexte de programmes PHP, vous en trouverez une description exhaustive du tableau de la figure 9.

Tableau de la figure 9 - Les opérateurs Bitwise du langage PHP
Opérateur Nom Exemple Résultat
& AND bitwise $a  &  $b Les bits positionnés à 1 dans $a ET dans $b sont positionnés à 1
| OR bitwise $a  |  $b Les bits positionnés à 1 dans $a OU dans $b sont positionnés à 1
~ NOT bitwise ~ $a Les bits qui sont positionnés à 1 dans $a sont positionnés à 0, et vice versa
^ XOR bitwise $a  ^  $b Les bits positionnés à 1 dans $a OU $b, mais pas dans les deux, sont positionnés à 1
<< décalage à gauche $a  <<  $b Décale $b vers la gauche, de $a bits
>> décalage à droite $a  >>  $b Décale $b vers la droite, de $a bits

AUTRES OPÉRATEURS :

Outre les opérateurs que nous avions vu jusqu'à présent et décrits jusqu'ici, le langage PHP comprend divers autres opérateurs.

L'opérateur virgule (,) s'emploie pour séparer les arguments d'une fonction, ainsi que les éléments d'une liste.

Les deux opérateurs spéciaux new et - > s'utilisent respectivement pour instantier une classe, et pour accéder aux membres d'une classe. Nous les étudierons en détail au cours de nos leçons.

Les opérateurs de tableau ([ ]) permettent d'accéder aux éléments stockés dans des tableaux. Nous en parlerons au cous de nos leçons que l'on verra par la suite.

Il existe encore trois autres opérateurs, que nous allons brièvement décrire dans les prochaines sous-sections.

Opérateur ternaire :

L'opérateur ternaire (?) : est comparable à l'opérateur ternaire du langage C. Il s'utilise de la manière suivante :

    condition ? valeur si vraie ; valeur si fausse

L'opérateur ternaire permet d'écrire une expression qui soit l'équivalent d'une instruction if - else, traitée plus loin dans cette leçon.

En voici un exemple simple d'application ; Jean-Pierre a-t-il bien travaillé à l'école ? :

    ($note > 50 ? "Admis" : "recalé") ;

Cette expression permet de déterminer si les étudiants sont admis ou recalés à leur examen.

L'opérateur de suppression d'erreur :

L'opérateur de suppression d'erreur @ peut s'utiliser devant toute expression, c'est-à-dire devant tout ce qui génère une valeur, ou contient une valeur. Soit l'instruction suivante :

    $a = @ (98/0) ;

En l'absence de l'opérateur @, cette ligne de code génère un message de division par zéro. La présence de l'opérateur @ évite l'impression de ce message.

Si vous faites usage de l'opérateur @, prévoyez du code de gestion des erreurs, pour détecter les erreurs qui se produisent. Si vous avez configuré EasyPHP, en activant le paramètre track_errors, les messages d'erreurs générés sont automatiquement stockés dans la variable globale $php_errormsg.

L'opérateur d'exécution :

L'opérateur d'exécution se compose réellement d'une paire d'opérateurs ` ` . Il ne s'agit pas là d'une paire de guillemets simples (apostrophes), mais de guillemets obliques.

L'interpréteur PHP essaye d'exécuter tout ce qu'il rencontre entre deux guillemets obliques comme une commande à la ligne de commande du serveur. La valeur de l'expression est alors le résultat de l'exécution de la commande.

Par exemple, sous un système d'exploitation de type Unix, vous pouvez utiliser :

    $out = `1s - 1a` ;

    echo "<pre>" . $out ."</pre>" ;

Ou de la même manière, sur un serveur Windows :

    $out = `dir c:` ;

    echo "<pre>" . $out . "</pre>" ;

L'exécution de chacun de ces fragments de code produit une liste de dossiers, stockée dans la variable $out. Celle-ci peut ensuite être imprimée dans le navigateur, ou bien traitée de toute autre manière.

Il existe d'autres manières d'exécuter des commandes sur un serveur. Nous étudierons par la suite de nos cours. Pour l'instant, nous allons compléter le formulaire de commande de chez Jean-Pierre.

Fin de ce troixième chapitre, le prochain sera consacré "à l'utilisation des opérateurs afin de calculer les totaux d'un formulaire de commande de chez Jean-Pierre" qui sera la suite de cette leçon".

  Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet.   Haut de page
  Page précédente   Page suivante







Nombre de pages vues, à partir de cette date : le 23 MAI 2019

compteur de visite

    




Envoyez un courrier électronique à Administrateur Web Société pour toute question ou remarque concernant ce site Web. 

Version du site : 10. 5. 14 - Site optimisation 1280 x 1024 pixels - Faculté de Nanterre - Dernière modification : 19 MAI 2019.   

Ce site Web a été Créé le, 14 Mars 1999 et ayant Rénové, en MAI 2019.