不涉及第三个变量交换两个变量的值
方法1:使用加减法
<?php
$a = 1;
$b = 2;
$a = $a+$b;
$b = $a-$b;
$a = $a-$b;
printf("\$a=%d,\$b=%d", $a, $b);
输出: $a=2,$b=1
方法2:使用乘除法
<?php
$a = 3;
$b = 4;
$a = $a*$b;
$b = $a/$b;
$a = $a/$b;
printf("\$a=%d,\$b=%d", $a, $b);
输出: $a=4,$b=3
方法3:使用与(^)交换方法
<?php
$a = 5;
$b = 6;
$a = $a ^ $b;
$b = $a ^ $b;
$a = $a ^ $b;
printf("\$a=%d,\$b=%d", $a, $b);
输出:$a=6,$b=5
方法4:使用list()方法
<?php
$a = 5;
$b = 6;
$a = [$a,$b];
list($b,$a) = $a;
printf("\$a=%d,\$b=%d", $a, $b);
输出:$a=6,$b=5
总结
以上为想出来的交换方法,肯定还有其他的方法,如果你有意的话,可以提出来,大家一起交流。