PHP 命名空间可以包含变量吗?

新手上路,请多包涵

PHP 命名空间可以包含变量吗?如果可以,如何实现?

原文由 EmpireJones 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 553
2 个回答

不可以。您可以在声明命名空间后设置变量,但变量将始终存在于全局范围内。它们从不绑定到名称空间。您可以从中没有任何名称解析描述来推断

也不允许使用语法来定位名称空间中的变量。

 print \namespace\$var;      // syntax error

print "${namespace\\var}";  // "unexpected T_NS_SEPARATOR"

原文由 mario 发布,翻译遵循 CC BY-SA 3.0 许可协议

尝试这个

<?php
namespace App\login;

$p = 'login';
$test2 = '\App\\'.$p.'\\MyClass';

$test = new $test2;

原文由 Maxim 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏