$a = "abc";
$b= "def";
$a = $a^$b;
$b = $b^$a;
$a = $a^$b;
echo $b; //abc
echo $a; //def
就解释计算过程 ,为什么会变量交换
$a = "abc";
$b= "def";
$a = $a^$b;
$b = $b^$a;
$a = $a^$b;
echo $b; //abc
echo $a; //def
就解释计算过程 ,为什么会变量交换
假设$a的二进制值是1000 $b是1010
//按位异或 方法一采用的是异或的方法。这个方法有个前提条件是$a,$b 的长度须一样
//$a = $a^$b; // 1000 1010
//echo $a; // 0010
//$b = $a^$b; //1010 0010 =1000
//echo $b; //1000
//$a = $a^$b; // 0010 1000 = 1010
//echo $a; // 1010
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答623 阅读✓ 已解决
802 阅读
二进制异或交换,任何语言都是一样的
参考https://blog.csdn.net/zxm1306...