[PHP] 変数Aと変数Bの値を入れ替える|3つ以上の変数も入れ替えも
更新:
2つの変数の入れ替え
▼PHPで2つの変数を入れ替えたいとき、一時的な変数を用意して行う方法が思いつきます。
php
<?php
$a = "yes";
$b = "no";
$tmp = $a; //$tmpは一時的に値を保持しておく為の変数
$a = $b;
$b = $tmp;
?>
変数$aと変数$bを入れ替える。
▼上記でもOKですが、list()言語構造を使うとでも同じことができます。
php
<?php
$a = "yes";
$b = "no";
list($a, $b) = array($b, $a);
var_dump($a); //string(2) "no"
?>
list()を使って変数を入れ替える。
こちらは1行で完結し不要な変数を作りません。コードがすっきりして可読性も高くなります。
3つの変数の入れ替え
▼更に引数を増やすことで3つ以上の変数を入れ替えることも可能です。
php
<?php
$a = "yes";
$b = "no";
$c = "neither";
list($a, $b, $c) = array($b, $c, $a);
var_dump($a); //string(2) "no"
var_dump($b); //string(7) "neither"
var_dump($c); //string(3) "yes"
?>