php - PHP 的列表函数是如何工作的?

标签 php function internals

最近在 SO 上回答了几个涉及使用 PHP 的 list 函数的问题后,我想知道,“这个函数到底是如何在幕后工作的?”。我正在考虑使用 func_get_args() 然后遍历参数列表,这一切都很好,但是 assignment 部分到底是如何工作的?

 list(...) = array($x, $y, $z);

这不是^先求值了吗?

准确地说,我的问题是 list 函数如何创建作用域变量,这些变量被分配给尚未计算的数组?

最佳答案

list 是一个语言结构,而不是一个函数。它不按照正常函数的规则运行,它更类似于 iffor(或 array(), as the manual states ) , 硬编码到 PHP 核心中。

关于php - PHP 的列表函数是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3766605/

相关文章:

php - 播种前无法截断表

javascript - 我的 JSON 字符串未通过 HTTP GET 请求接收完整

PHP OAuth 1.0 库,用于处理 api key / secret 对和端点(请求、授权和访问)

c++ - 添加函数数组并随机选择其中一个

c++ - 如何在不破坏现有代码的情况下向函数添加输出参数?

php - 访问被禁止怎么解决! xampp 服务器的 codeigniter 错误

java - 自定义函数: apply in Stream

kubernetes - 如何从外部连接到 Kubernetes 中的 headless 服务?

c++ - map 是否将元素存储为 std::pair?

java - GuardedString 和 JVM 的内存持久性