In diesem Artikel erfahren Sie, wie Sie die Werte zweier Variablen in PHP austauschen können, ohne eine dritte Variable zu verwenden.
1. strlen()
<?php /** * 双方变量为字符串时,可用交换方法一 * 使用substr()结合strlen()两个方法达到交换变量值得目的 */ $a = "This is A"; // a变量原始值 $b = "This is B"; // b变量原始值 echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值 $a .= $b; // 将$b的值追加到$a中 /** * $b得到$a值详解: * 先通过strlen()分别计算出$a和$b中字符串的长度【此时$a是原始$a和$b的合值】 * 通过strlen($a)-strlen($b)即可得出原始$a的值长度 * 在通过substr()方法在合并后的$a中从0开始截取到$a的长度,那么即可得到原始$a的值 * $a得到$b值详解: * 由于此刻$b已经是$a的原始值了,而$a合并后的值为原始$a+原始$b的值,故用substr()在$a中从$b(原始$a)长度位置截取,则去的内容则为原始$b,则将$b值付给$a成功 */ $b = substr($a,0,(strlen($a)-strlen($b))); $a = substr($a, strlen($b)); echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
Betriebsergebnis:
Der Wert von $a vor dem Austausch: Das ist A, der Wert von $b: Das ist B
Der Wert von $a nach dem Austausch: Das ist B, Der Wert von $b: Das ist A
2. str_replace()
<?php /** * 双方变量为字符串时,可用交换方法二 * 使用str_replace()方法达到交换变量值得目的 * 此方法较第一种,逻辑上稍微简单点 */ $a = "This is A"; // a变量原始值 $b = "This is B"; // b变量原始值 echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值 $a .= $b; // 将$b的值追加到$a中 $b = str_replace($b, "", $a); // 在$a(原始$a+$b)中,将$b替换为空,则余下的返回值为$a $a = str_replace($b, "", $a); // 此时,$b为原始$a值,则在$a(原始$a+$b)中将$b(原始$a)替换为空,则余下的返回值则为原始$b,交换成功 echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
3. list() && list()
<?php /** * 双方变量为字符串时,可用交换方法三 * 使用list()和array()方法达到交换变量值得目的 * 此方法较第一、二种,代码最简洁 */ $a = "This is A"; // a变量原始值 $b = "This is B"; // b变量原始值 echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值 list($b,$a) = array($a,$b); // list() 函数用数组中的元素为一组变量赋值。了解这个,相信其他的不用我多说了吧 echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
Verwandte Empfehlungen:
So tauschen Sie zwei Variablenwerte aus in PHP (Keine dritte Variable erforderlich)
Das obige ist der detaillierte Inhalt vonSo tauschen Sie die Werte zweier Variablen in PHP aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!