Operador xor:
O operador Xor é usado na operação booleana e a operação bit a bit é mostrada na tabela a seguir.
Condição-1 / Operando-1 | Condição-1 / Operando-1 | Resultado |
---|---|---|
Verdadeiro ou 1 | Verdadeiro ou 1 | Falso ou 0 |
Verdadeiro ou 1 | Falso ou 1 | Verdadeiro ou 1 |
Falso ou 0 | Verdadeiro ou 1 | Verdadeiro ou 1 |
Falso ou 0 | Falso ou 0 | Falso ou 0 |
Usando XOR para operação booleana:
Os diferentes usos do operador XOR são explicados nesta seção deste tutorial usando vários exemplos.
Exemplo -1: Usando XOR em condições booleanas de dados de string
O exemplo a seguir mostra o uso do operador xor para verificar a lógica booleana em dados de string. $ customer_id e $ client_id as variáveis são inicializadas com os dados da string aqui. O primeiro E se condição com xor operador irá verificar os primeiros dois caracteres de $ customer_id é 'AL' ou 'CA'. Xor operador retornará verdadeiro para este E se condição porque uma condição retorna verdadeira. O segundo E se condição com xor operador irá verificar os primeiros dois caracteres de $ customer_id é 'AZ' ou 'GA'. Xor operador retornará falso para este E se condição porque ambas as condições retornam falso. O terceiro E se condição com xor o operador irá verificar os dois primeiros $ customer_id é 'CA' ou $ client_id é 'OI'. Xor operador retornará falso para este E se condição porque ambas as condições retornam verdadeiras.
// Inicializa as variáveis$ customer_id = 'CA-756345';
$ client_id = 'HI-98765';
// XOR retornará verdadeiro se apenas uma condição retornar verdadeiro
if (substr ($ customer_id, 0,2) == 'AL' xor substr ($ customer_id, 0,2) == 'CA')
// Descubra qual condição retornou verdadeira
if (substr ($ customer_id, 0,2) == 'AL')
echo "O cliente ($ customer_id) mora em Alabama
";
senão
echo "O cliente ($ customer_id) mora em Califórnia
";
// XOR retornará falso se ambas as condições retornarem falso
if (substr ($ customer_id, 0,2) == 'AZ' xor substr ($ customer_id, 0,2) == 'GA')
echo "O cliente ($ customer_id) mora em Arizona ou Georgia
";
senão
echo "O cliente ($ customer_id) niether mora em Arizona nem mora em Georgia
";
// XOR retornará falso se ambas as condições retornarem verdadeiras
if (substr ($ customer_id, 0,2) == 'CA' xor substr ($ client_id, 0,2) == 'HI')
if (substr ($ customer_id, 0,2) == 'CA')
echo "O cliente ($ customer_id) mora em Califórnia
";
senão
echo "O cliente ($ customer_id) mora em Havaí
";
senão
// Descubra os estados do cliente e do cliente
if (substr ($ customer_id, 0,2) == 'CA' e substr ($ client_id, 0,2) == 'HI')
echo "O cliente ($ customer_id) mora em Califórnia
";
echo "O cliente ($ client_id) mora em Havaí
";
?>
Resultado:
A seguinte saída aparecerá após a execução do script.
Exemplo 2: Usando XOR em condições booleanas de dados numéricos
O exemplo a seguir mostra o uso do operador xor para verificar a lógica booleana em dados numéricos. Dois valores numéricos são atribuídos a $ num1 e $ num2 variáveis. O primeiro E se condição com xor operador irá verificar $ num1 é menor que 3 ou maior que 9. xor operador retornará verdadeiro para este E se condição porque $ num1 é maior que 9. O segundo E se condição com xor operador irá verificar $ num1 é menor ou igual a 10 ou $ num2 é maior ou igual a 7. xor operador retornará falso para este E se condição porque ambas as condições são verdadeiras. O terceiro E se condição com xor operador irá verificar $ num1 é maior que 19 ou $ num2 é igual a 17. xor operador retornará falso para este E se condição porque ambas as condições são falsas.
// Inicializa os valores numéricos$ num1 = 10;
$ num2 = 7;
// Retorna verdadeiro se uma condição for verdadeira
if ($ num1 9)
echo "O número é $ num1.
";
// Retorna verdadeiro se as condições forem verdadeiras
if ($ num1 = 7)
if ($ num1 <= 10)
echo "A condição é verdadeira para $ num1.
";
senão
echo "A condição é verdadeira para $ num2.
";
senão
if ($ num1 = 7)
echo "Ambas as condições são verdadeiras.
";
senão
echo "Ambas as condições são falsas.
";
// Retorna falso se ambas as condições forem falsas
if ($ num1> 19 xou $ num2 == 17)
echo "Uma das condições é verdadeira.
";
senão
E se(!($ num1 8))
echo "Ambas as condições são falsas.
";
senão
echo "Ambas as condições são verdadeiras.
";
?>
Resultado:
A seguinte saída aparecerá após a execução do script.
Exemplo-3: Usando XOR na operação bit a bit
O exemplo a seguir mostra o uso do operador xor para operação bit a bit. Dois números binários são inicializados nas variáveis $ number1 e $ number2. O símbolo '^' é usado para realizar a operação xor bit a bit em números binários. O valor numérico é impresso em número decimal por padrão para qualquer script. A função decbin () é usada no script para imprimir a saída em formato binário.
// Dois números binários são definidos$ numero1 = 0b111;
$ numero2 = 0b010;
// Use XOR para operação bit a bit
$ resultado = decbin ($ número1 ^ $ número2);
// Imprime o resultado em binário
echo "O resultado da operação bit a bit em binário é: $ result";
?>
Resultado:
A seguinte saída aparecerá após a execução do script.
Conclusão:
Os usos do operador Xor entre as condições booleanas e os números binários foram explicados usando vários exemplos neste tutorial. Os leitores entenderão a lógica do operador xor e a aplicarão à instrução condicional e à operação bit a bit depois de ler este tutorial.