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.
Example#1 Exemples avec les opérateurs sur les bits
<?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
?>
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). |
Warning
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.