PHP的列表功能如何工作?

Jac*_*kin 5 php function internals

在最近回答了有关利用PHP list功能的SO的几个问题之后,我想知道," 这个功能在世界范围内如何真正起作用? ".我正在考虑使用func_get_args()然后迭代参数列表之类的东西,这一切都很好而且非常好,但那么分配部分在世界上是如何工作的呢?

 list(...) = array($x, $y, $z);
Run Code Online (Sandbox Code Playgroud)

是不是先评估^?

所以准确地说,我的问题是该list函数如何能够创建范围内的变量,这些变量被分配给尚未评估的数组?

dec*_*eze 7

list是一种语言结构,而不是一种功能.它不适用于普通函数的规则,它更类似于if或者for(或者array(),作为手动状态),硬编码到PHP核心中.

  • downvoter会关心发表评论吗?(你确实把代表带到了一个漂亮的圆形数字,所以,谢谢,我的意思.) (2认同)
  • @stereofrog哦,我想这是值得商榷的.我想这有助于标记显然像`=`之类的操作符和看起来更像函数但不像`empty`的东西之间的区别.我同意`list()=`将是一个运算符,但它的"正式名称"是`list()`,它与`=`运算符一起工作...... Meh.那是你的PHP,不是很学术.:) (2认同)