Opérateur xor :
L'opérateur Xor est utilisé dans l'opération booléenne, et l'opération au niveau du bit est illustrée dans le tableau suivant.
Condition-1 / Opérande-1 | Condition-1 / Opérande-1 | Production |
---|---|---|
Vrai ou 1 | Vrai ou 1 | Faux ou 0 |
Vrai ou 1 | Faux ou 1 | Vrai ou 1 |
Faux ou 0 | Vrai ou 1 | Vrai ou 1 |
Faux ou 0 | Faux ou 0 | Faux ou 0 |
Utilisation de XOR pour l'opération booléenne :
Les différentes utilisations de l'opérateur XOR sont expliquées dans cette section de ce tutoriel en utilisant plusieurs exemples.
Exemple -1 : Utilisation de XOR dans des conditions booléennes de données de chaîne
L'exemple suivant montre l'utilisation de l'opérateur xor pour vérifier la logique booléenne sur les données de chaîne. $client_id et $client_id les variables sont initialisées avec les données de chaîne ici. La première si état avec xor l'opérateur vérifiera les deux premiers caractères de $client_id est 'AL' ou alors 'CALIFORNIE'. Xou l'opérateur retournera vrai pour cela si condition car une condition renvoie vrai. La deuxième si état avec xor l'opérateur vérifiera les deux premiers caractères de $client_id est 'AZ' ou alors 'GÉORGIE'. Xou l'opérateur retournera false pour cela si condition car les deux conditions retournent faux. Le troisième si état avec xor l'opérateur vérifiera les deux premiers $client_id est 'CALIFORNIE' ou alors $client_id est 'SALUT'. Xou l'opérateur retournera false pour cela si condition car les deux conditions retournent vrai.
//Initialisation des variables$customer_id = 'CA-756345';
$client_id = 'HI-98765';
//XOR retournera vrai si une seule condition retourne vrai
if(substr($customer_id,0,2) == 'AL' xor substr($customer_id,0,2) == 'CA')
//Découvre quelle condition a retourné vrai
if(substr($customer_id,0,2) == 'AL')
echo "Le client($customer_id) habite dans Alabama
";
autre
echo "Le client($customer_id) habite dans Californie
";
//XOR retournera false si les deux conditions retournent false
if(substr($customer_id,0,2) == 'AZ' xor substr($customer_id,0,2) == 'GA')
echo "Le client($customer_id) habite dans Arizona ou alors Géorgie
";
autre
echo "Le client($customer_id) n'habite pas non plus Arizona ni vit dans Géorgie
";
//XOR retournera false si les deux conditions retournent true
if(substr($customer_id,0,2) == 'CA' xor substr($client_id,0,2) == 'HI')
if(substr($customer_id,0,2) == 'CA')
echo "Le client($customer_id) habite dans Californie
";
autre
echo "Le client($customer_id) habite dans Hawaii
";
autre
//Connaître les états du client et du client
if(substr($customer_id,0,2) == 'CA' et substr($client_id,0,2) == 'HI')
echo "Le client($customer_id) habite dans Californie
";
echo "Le client($client_id) réside dans Hawaii
";
?>
Production:
La sortie suivante apparaîtra après l'exécution du script.
Exemple 2 : utilisation de XOR dans des conditions booléennes de données numériques
L'exemple suivant montre l'utilisation de l'opérateur xor pour vérifier la logique booléenne sur les données numériques. Deux valeurs numériques sont affectées à $num1 et $num2 variables. La première si état avec xor l'opérateur vérifiera $num1 est inférieur à 3 ou supérieur à 9. xor l'opérateur retournera vrai pour cela si état parce que $num1 est supérieur à 9. La deuxième si état avec xor l'opérateur vérifiera $num1 est inférieur ou égal à 10 ou $num2 est supérieur ou égal à 7. xor l'opérateur retournera false pour cela si condition car les deux conditions sont vraies. Le troisième si état avec xor l'opérateur vérifiera $num1 est supérieur à 19 ou $num2 est égal à 17. xor l'opérateur retournera false pour cela si condition car les deux conditions sont fausses.
//Initialisation des valeurs numériques$num1 = 10 ;
$num2 = 7 ;
// Renvoie vrai si une condition est vraie
si($num1 9)
echo "Le nombre est $num1.
";
//Renvoie vrai si les cobditions sont vraies
si($num1 = 7)
si($num1 <= 10)
echo "La condition est vraie pour $num1.
";
autre
echo "La condition est vraie pour $num2.
";
autre
si($num1 = 7)
echo "Les deux conditions sont vraies.
";
autre
echo "Les deux conditions sont fausses.
";
//Renvoie faux si les deux conditions sont fausses
si($num1 > 19 x ou $num2 == 17)
echo "Une des conditions est vraie.
";
autre
si(!($num1 8))
echo "Les deux conditions sont fausses.
";
autre
echo "Les deux conditions sont vraies.
";
?>
Production:
La sortie suivante apparaîtra après l'exécution du script.
Exemple-3 : Utilisation de XOR dans l'opération au niveau du bit
L'exemple suivant montre l'utilisation de l'opérateur xor pour une opération au niveau du bit. Deux nombres binaires sont initialisés dans les variables $number1 et $number2. Le symbole '^' est utilisé pour effectuer une opération xor au niveau du bit sur des nombres binaires. La valeur numérique s'imprime en nombre décimal par défaut pour tout script. La fonction decbin() est utilisée dans le script pour imprimer la sortie au format binaire.
//Deux nombres binaires sont définis$ nombre1 = 0b111 ;
$ nombre2 = 0b010 ;
//Utiliser XOR pour une opération au niveau du bit
$result = decbin($nombre1 ^ $nombre2) ;
//Imprime le résultat en binaire
echo "Le résultat de l'opération au niveau du bit en binaire est : $result" ;
?>
Production:
La sortie suivante apparaîtra après l'exécution du script.
Conclusion:
Les utilisations de l'opérateur Xor entre les conditions booléennes et les nombres binaires ont été expliquées à l'aide de plusieurs exemples dans ce tutoriel. Les lecteurs comprendront la logique de l'opérateur xor et l'appliqueront à l'instruction conditionnelle et à l'opération au niveau du bit après avoir lu ce tutoriel.