2016-12-13 1 views
1

Je veux Xor ces deux nombres décimaux en utilisant PHP. J'ai essayé l'opérateur bit à bit XOR (^) mais la sortie est fausse puisque je la veux en décimal aussi.Calculer Décimal Xor pour deux nombres décimaux en utilisant PHP

premier numéro = 121065035052

second Number = 210022101 décimal attendu XORed output = 121274989561

echo 210022101^121065035052 ; 

la sortie de cette instruction echo est: 1015905273

S'il vous plaît me aider. Merci d'avance

+0

"J'ai essayé cette fonction mais ..." - quelle fonction? –

+1

@Hallur^fonction –

+0

Cela fonctionne ici: http://phptester.net/ – deChristo

Répondre

0

Le premier numéro 121065035052 est un nombre de 37 bits, donc votre code ne fonctionne que sur PHP 64 bits. Pour la compatibilité avec PHP 32 bits, utilisez GMP.

$a = gmp_init('121065035052'); 
$b = gmp_init('210022101'); 
$c = gmp_xor($a,$b); 

echo gmp_strval($c); 

La sortie est 121274989561 comme prévu.