gpt4 book ai didi

php - 为什么不支持将 PHP 函数导入当前命名空间

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:47:56 25 4
gpt4 key购买 nike

根据PHP documentation

PHP namespaces support three kinds of aliasing or importing: aliasing a class name, aliasing an interface name, and aliasing a namespace name. Note that importing a function or constant is not supported.

有谁知道为什么不支持导入函数或常量的历史或技术背景?

最佳答案

我联系了 Jochem Maas(作者 of this five year old RFC ),虽然他不愿指出一个原因(可以理解,因为他目前没有深入参与命名空间系统),但他的三个因素是

  1. 类名冲突比函数名冲突更像是一个现实世界的问题

  2. PHP 函数和类位于引擎代码的不同区域,在 use 语句中解析哪个是哪个存在技术障碍。

  3. 对于如何处理自动加载器和特定函数的导入/别名存在一些不确定性/意见分歧。 (自动加载器是一个单独的系统,仅适用于类)

最终,PHP 的实用主义取得了胜利,这就是我们拥有今天的命名空间系统的原因。

关于php - 为什么不支持将 PHP 函数导入当前命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17412104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com