PHP-不涉及第三个变量交换两个变量的值

时间:2022-09-01 17:36:10

不涉及第三个变量交换两个变量的值

方法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

总结

以上为想出来的交换方法,肯定还有其他的方法,如果你有意的话,可以提出来,大家一起交流。