The
gmp_xor() is an in-built function in PHP which is used to calculate the XOR of 2 GMP numbers (
GNU Multiple Precision : For large numbers).
Syntax:
gmp_xor( $num1, $num2 )
Parameters: This function accepts two GMP numbers
$num1 and
$num2 as mandatory parameters shown in the above syntax. These parameters can be a GMP object in PHP version 5.6 and later, or we are also allowed to pass a numeric string provided that it is possible to convert that string to a number.
Return Value: This function returns a positive GMP number which is the
XOR of $num1 and $num2.
Examples:
Input : $num1 = "3" $num2 = "5"
Output : 6
Input : $num1 = 1 $num2 = 1
Output : 0
Below programs illustrate the gmp_xor() function:
Program 1: The program calculates the XOR of two numbers when numeric strings as GMP numbers are passed as arguments.
php
<?php
// PHP program to calculate the XOR
// of two numbers using gmp_xor()
// numeric string passed as arguments
$xor = gmp_xor("3", "5");
// prints the GMP number which xor
// of two numeric strings
echo $xor;
?>
Output:
6
Program 2: The program calculates the XOR of two numbers when GMP numbers are passed as arguments.
php
<?php
// PHP program to calculate XOR
// of two numbers
// GMP numbers passed as arguments
$xor1 = gmp_init("1101101110", 2);
$xor2 = gmp_init("0110011001", 2);
// function calculates the XOR of two numbers
$xor3 = gmp_xor($xor1, $xor2);
// prints the GMP number which is the
// XOR of two GMP numbers
// gmp_strval Convert GMP number to string
// representation in given base(default 10).
echo gmp_strval($xor3, 2);
?>
Output:
1011110111
Reference:
https://www.php.net/manual/en/function.gmp-xor.php