交换变量是一项常见任务,通常使用这样的临时变量进行教学和实现:
function swap(&$left, &$right): void
{
$tmp = $left;
$left = $right;
$right = $tmp;
}
但是使用解构有一种更短的方法(从 php 7.1 开始!):
function swap(&$left, &$right): void
{
[$left, $right] = [$right, $left];
}
也许代码看起来有点奇怪,我还没有分析它的性能问题,但它有助于理解解构。
顺便说一句,这不是 php 独有的功能,请随意测试它,例如在 javascript 中。