TypeScriptで分割代入が日常的に使われてるのでPHPでもできるのか調べてたらありました。
PHPで見かけたことがないのでマイナーっぽいです。
まずは標準的なやり方。
$array = [1, 2, 3];
$a = $array[0];
$b = $array[1];
$c = $array[2];
リスト構文を使うやり方。
[$a, $b, $c] = [1, 2, 3];
//$a 1
//$b 2
//$c 3
順不同でよくなるため、連想配列の方が安全に割り当て可能。
["a" => $a,"b" => $b,"c" => $c] = ["a" => 1,"b" => 2,"c" => 3];
//$a 1
//$b 2
//$c 3
compact関数を組み合わせてキーを振った連想配列を組み立ててから使うと便利。
配列の組み立て
$a = 1;
$b = 2;
$c = 3;
$array = compact("a", "b", "c");
値の展開
["a" => $a,"b" => $b,"c" => $c] = $array;
//$a 1
//$b 2
//$c 3
結論
わりと好みな気がしなくもない・・・。