在最近回答了有关使用PHP的list
功能的SO的几个问题后,我想知道,“这个功能在世界范围内如何实际起作用?”。我正在考虑使用func_get_args()
,然后遍历参数列表,这一切都很好,很好,但那么赋值部分在世界上是如何工作的?
list(...) = array($x, $y, $z);
不首先评价这个吗?
所以准确地说,我的问题是list
函数如何能够创建范围变量,这些变量被分配给尚未评估的数组?
答案 0 :(得分:7)
list
是一个语言构造,而不是一个函数。它不受正常函数规则的影响,它更类似于if
或for
(或array()
,as the manual states),硬编码到PHP核心中。