Les opérateurs
Opérateurs arithmétiques
|
Symbole |
Définition |
|
+ |
Addition |
|
– |
Soustraction |
|
/ |
Division |
|
* |
Multiplication |
|
% |
Modulo:reste d’une division |
|
++ |
Incrément |
|
— |
Décrément |
Exemples :
[pastacode lang= »php » manual= »%24a%3D4%3B%20%24b%3D8%3B%20%24c%3D%24a%2B%24b%3B%0A%24c%2B%2B%3B%20%24reste%3D%24b%25%24a%3B%0A%24f%3D%24a*(%24b-2)%3B%20Attention%20aux%20priorit%C3%A9s%20des%20op%C3%A9rateurs%0A%24g%3D9%3B%20%24h%3D3%3B%20%24g%2B%3D%24f%3B%20%24g*%3D%24f%3B%0A » message= »exemple 3.1″ highlight= » » provider= »manual »/]
Il y a aussi l’opérateur d’affectation qui est =
Par défaut l’affectation = est une affectation par copie ( les deux variables sont par la suite indépendantes ).
On peut faire une copie par référence en utilisant le signe =&. Dans ce cas les deux variables désignent une même référence.
Exemple :
[pastacode lang= »php » manual= »%24a%3D2%3B%20%24b%3D%26%24a%3B%20%2F%2F%20%24b%20vaut%202%0A%24a%3D4%3B%20%2F%2F%20%24b%20vaut%204%20automatiquement » message= »exemple 3.2″ highlight= » » provider= »manual »/]
Il y a également l’opérateur +=
$compteur += 1;
$compteur = $compteur + 1;
Les autres sur le même principe -=, /=, *=, %=, .=

Opérateurs de comparaison
|
Symbole |
Définition |
|
== |
Egal |
|
< |
Inférieur strict |
|
> |
Supérieur strict |
|
<= |
Inférieur ou égal |
|
>= |
Supérieur ou égal |
|
!= |
Différent |
Ces opérateurs de comparaison sont utilisés lors de construction par exemple avec if().
Opérateurs logiques

Ils seront nécessaires afin de combiner plusieurs conditions.
[pastacode lang= »php » manual= »if%20(%24heures%20%3E%2012%20%26%26%20%24heures%20%3C%2014)%20aller_manger()%3B » message= »exemple 3.3″ highlight= » » provider= »manual »/]
Les opérateurs logiques fonctionnent avec des valeurs booléennes.
Incrémentation et décrémentation de variable
pour ajouter 1 à un variable et donc l’incrémenter :
[pastacode lang= »php » manual= »%2B%2B%24x%3B » message= »exemple 3.4″ highlight= » » provider= »manual »/]
Pour décrémenter :
[pastacode lang= »php » manual= »–%24y%3B » message= »exemple 3.5″ highlight= » » provider= »manual »/]
Concaténation de chaines
Concaténer c’est ajout à la suite de quelque chose. On l’utilise pour les chaines de caractères et cela revient à les assembler comme les wagons d’un train.
L’opérateur de concaténation est : .
[pastacode lang= »php » manual= »echo%20%22Vous%20avez%20%22%20.%20%24nbrmessage%20.%20%22%20messages.%22%3B » message= »exemple 3.6″ highlight= » » provider= »manual »/]
PHP va afficher la première chaine suivi de la valeur de la variable et suivi de la dernière chaine de caractères.
Différence entre ‘ et “
PHP fait la différence entre :
[pastacode lang= »php » manual= »%24info%20%3D%20%C2%A0’Voici%20les%20variables%20utilis%C3%A9es%20%24age%20et%20%24poids’%3B » message= » » highlight= » » provider= »manual »/]
et
[pastacode lang= »php » manual= »%24info%20%3D%20%C2%A0%22Voici%20les%20variables%20utilis%C3%A9es%20%24age%20et%20%24poids%22%3B » message= » » highlight= » » provider= »manual »/]
Dans le premier cas il n’essaye pas d’évaluer $age et $poids et assimile tout à du texte.
Dans le deuxième cas il va rechercher la valeur de $age et $poids.
Astuce :
En utilisant les ″ vous pouvez inclure des variables sans avoir recourt à la concaténation.
Il reste un problème su votre chaine contient ‘.
Par exemple :
[pastacode lang= »php » manual= »%24texte%20%3D%20’Bonjour%20!%20c’est%20super%20sympa%20de%20m’inviter’%3B » message= » » highlight= » » provider= »manual »/]
Dans ce cas $texte contient Bonjour ! c
Et provoque donc une erreur de syntaxe pour ce qui suit. La solution est le caractère d’échappement \.
On écrira :
[pastacode lang= »php » manual= »%24texte%20%3D%20’Bonjour%20!%20c%5C’est%20super%20sympa%20de%20m%5C’inviter’%3B » message= » » highlight= » » provider= »manual »/]
On peut utiliser ce caractère d’échappement pour d’autres situations.
Fonctions
Nous reviendrons plus longuement sur les fonctions mais en quelques mots la fonction réalise une tâche. C’est une portion de code qu’on peut appeler et lui passant des paramètres si besoin.
Cela permet une factorisation du code et une meilleure lisibilité.
[pastacode lang= »php » manual= »%3C%3Fphp%0Afunction%20paire(%24nbr)%0A%7B%0A%09if%20(%24nbr%252)%0A%09%09return%20%22Impair%22%3B%0A%09else%0A%09%09return%20%22Pair%22%3B%0A%7D%0A%0Aecho%20paire(2)%3B%0A%3F%3E » message= »exemple 3.7″ highlight= » » provider= »manual »/]
EXERCICES
Exercice 3.1 :
Donner les valeurs de $x, $y, $z à la fin du script suivant :
[pastacode lang= »php » manual= »%24x%3D%22PostgreSQL%22%3B%0A%24y%3D%22MySQL%22%3B%0A%24z%3D%26%24x%3B%0A%24x%3D%22PHP%205%22%3B%0A%24y%3D%26%24x%3B » message= » » highlight= » » provider= »manual »/]
Correction :
les variables $x, $y et $z valent toutes PHP 5
Exercice 3.2 :
Donner la valeur booléenne des variables $a, $b, $c, $d, $e et $f :
[pastacode lang= »php » manual= »%24a%3D%220%22%3B%0A%24b%3D%22TRUE%22%3B%0A%24c%3DFALSE%3B%0A%24d%3D(%24a%20OR%20%24b)%3B%0A%24e%3D(%24a%20AND%20%24c)%3B%0A%24f%3D(%24a%20XOR%20%24b)%3B » message= » » highlight= » » provider= »manual »/]
Correction :
Cet exercice est assez facile il suffit d’utiliser la fonction bool() afin de connaître la valeur.
Cependant même dans sa dernière version, PHP continue à afficher 1 pour TRUE et rien (une chaîne vide !) pour FALSE. Pour réaliser l’évaluation booléenne des variables et afficher le résultat en clair (avec les mots TRUE ou FALSE) nous pouvons écrire le code suivant :
[pastacode lang= »php » manual= »%3C%3Fphp%0Afunction%20bool(%24val)%0A%7B%0A%09if(%24val)%20echo%20%22TRUE%20%3Cbr%20%2F%3E%22%3B%0A%09else%20echo%20%22FALSE%20%3Cbr%20%2F%3E%22%3B%0A%7D%0A%0A%24a%3D%220%22%3B%0Aecho%20%22%5C%24a%20vaut%20%3A%20%22%2Cbool(%24a)%3B%0A%24b%3D%22TRUE%22%3B%0Aecho%20%22%5C%24b%20vaut%20%3A%20%22%2Cbool(%24b)%3B%0A%24c%3DFALSE%3B%0Aecho%20%22%5C%24c%20vaut%20%3A%20%22%2Cbool(%24c)%3B%0A%24d%3D(%24a%20OR%20%24b)%3B%0Aecho%20%22%5C%24d%20vaut%20%3A%20%22%2Cbool(%24d)%3B%0A%24e%3D(%24a%20AND%20%24c)%3B%0Aecho%20%22%5C%24e%20vaut%20%3A%20%22%2Cbool(%24e)%3B%0A%24f%3D(%24a%20XOR%20%24b)%3B%0Aecho%20%22%5C%24f%20vaut%20%3A%20%22%2Cbool(%24f)%3B%0A%3F%3E » message= »Correction de l’exercice 3.2″ highlight= » » provider= »manual »/]
Ce contenu est réservé aux membres du site. Si vous êtes un utilisateur existant, veuillez vous connecter. Les nouveaux utilisateurs peuvent s'inscrire ci-dessous.
