php不用第三个变量,交换两个数的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php不用第三个变量,交换两个数的值相关的知识,希望对你有一定的参考价值。

//字符串版本 结合使用substr,strlen两个方法实现

$a="a";

$b="b";

echo ‘交换前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;

$a.=$b;

$b=substr($a,0,(strlen($a)-strlen($b)));

$a=substr($a, strlen($b));

echo ‘交换后$a:‘.$a.‘,$b:‘.$b.‘<br />‘;


echo ‘-----------------------<br/>‘;


//字符串版本 使用str_replace方法实现

$a="a";

$b="b";

echo ‘交换前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;

$a.=$b;

$b=str_replace($b, "", $a);

$a=str_replace($b, "", $a);

echo ‘交换后$a:‘.$a.‘,$b:‘.$b.‘<br />‘;


echo ‘-----------------------<br/>‘;


//字符串版本 结合使用list方法和array实现

$a="a";

$b="b";

echo ‘交换前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;

list($b,$a)=array($a,$b);

echo ‘交换后$a:‘.$a.‘,$b:‘.$b.‘<br />‘;


echo ‘-----------------------<br/>‘;


//字符串和数字都适用 使用异或运算(这个特别有意思!相当于一个数学运算)

$a=‘a‘;

$b=‘b‘;

echo ‘交换前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;

$a=$a^$b;

$b=$b^$a;

$a=$a^$b;

echo ‘交换后$a:‘.$a.‘,$b:‘.$b.‘<br />‘;


echo ‘-----------------------<br/>‘;


//只适用于数字

$a=3;

$b=5;

echo ‘交换前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;

$a=$a+$b;

$b=$a-$b;

$a=$a-$b;

echo ‘交换后$a:‘.$a.‘,$b:‘.$b.‘<br />‘;


本文出自 “Linux狱长” 博客,请务必保留此出处http://sswqzx.blog.51cto.com/2494644/1962243

以上是关于php不用第三个变量,交换两个数的值的主要内容,如果未能解决你的问题,请参考以下文章

如何不用第三个变量实现两个数的交换

PHP不用第三变量交换2个变量的值的解决方法

javajava 如何不使用第三个变量来交换两个数的值

PHP 不使用第三个变量实现交换两个变量的值

PHP 不使用第三个变量实现交换两个变量的值

不用第三方变量交换两个数的值