Les opérateurs d'assignation
Opérateurs de comparaison
Les opérateurs
PHP Manual

## Opérateurs sur les bits

Les opérateurs sur les bits vous permettent de manipuler les bits dans un entier. Si les paramètres de gauche et de droite sont des chaînes de caractères, l'opérateur de bits agira sur les valeurs ASCII de ces caractères.

`<?php
echo 12 ^ 9; // Affiche '5'
echo "12" ^ "9"; // Affiche le caractère d'effacement (ascii 8)
// ('1' (ascii 49)) ^ ('9' (ascii 57)) = #8
echo "hallo" ^ "hello"; // Affiche la valeur asciie : s #0 #4 #0 #0 #0
// 'a' ^ 'e' = #4
echo 2 ^ "3"; // Affiche 1
// 2 ^ ((int)"3") == 1
echo "2" ^ 3; // Affiche 1
// ((int)"2") ^ 3 == 1
?>`

Les opérateurs sur les bits
Exemple | Nom | Résultat
--- | --- | ---
$a & $b | ET (And) | Les bits positionnés à 1 dans $a ET dans $b sont positionnés à 1.
$a | $b | OU (Or) | Les bits positionnés à 1 dans $a OU $b sont positionnés à 1.
$a ^ $b | Xor | Les bits positionnés à 1 dans $a OU dans $b mais pas dans les deux sont positionnés à 1.
~ $a | NON (Not) | 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, $b fois sur la gauche (chaque décalage équivaut à une multiplication par 2).
$a >> $b | Décalage à droite | Décalage des bits de $a, $b fois par la droite (chaque décalage équivaut à une division par 2).

Avertissement

N'effectuez pas de décalage à droite de plus de 32 bits sur les systèmes 32 bits. N'effectuez pas de décalage à droite dans le cas où le résultat est un nombre plus long que 32 bits.

Les opérateurs d'assignation
Opérateurs de comparaison
Les opérateurs
PHP Manual