假设我有一个函数返回以下数组:
function fruits(){
$arr = array('apple','orange','banana','pear');
return $arr;
}
我想将第三和第四个数组元素赋值给变量,而不使用临时变量:
list(NULL,NULL,$banana,$pear) = fruits();
这段代码将不能工作,但它将显示我想使用list
结构的方式的想法。
我想使用list
的原因如下:
我使用PHP 5.3,所以像
fruits()[2]
这样的结构将无法工作我可以在一行相当可读的代码中执行更多赋值
我想跳过临时变量以减少代码大小并增加其可读性
那么是否有可能使用list
并跳过一些数组元素?
php 5.5.14
function fruits(){
$arr = array('apple','orange','banana','pear');
return $arr;
}
list(,,$banana,$pear) = fruits();
echo $banana; // banana
是的,您可以跳过元素:只需省略变量名称:
list(,,$banana,$pear) = fruits();
PHP 7.1+
[,,$banana,$pear] = fruits();