【发布时间】:2011-08-21 05:33:52
【问题描述】:
假设我有一个这样的数组:
$arr1 = ('red', 'blue');
然后我做:
list($color1, $color2, $color3) = $arr1;
我得到了 2 个带有数组值的不错的变量。
是否有可能以某种方式将$color3 设置为具有默认值,以防它不存在于数组中,但使用尽可能少的代码(不使用if 检查和类似的东西)?
我尝试使用list($color1 = 'default', $color2 = 'default', $color3 = 'default') = $arr1;,但它不起作用...
【问题讨论】:
-
您可以预先分配
$colorN并让list覆盖默认值。但是,如果$arr1没有足够的项目,您将收到通知。恕我直言,应该重写发出通知的代码以解决问题。