【问题标题】:What's the difference between "use \namespace\Class" and "use namespace\Class" in PHP?PHP 中的“use \namespace\Class”和“use namespace\Class”有什么区别?
【发布时间】:2012-12-15 23:27:14
【问题描述】:

在我们的命名空间类文件中,有各种类的命名空间以反斜杠为前缀,而许多其他类则没有。

这两者有区别吗?哪个更适合使用?

例如

use namespace\ui\User

use \namespace\ui\User

其中namespace 本身代表命名空间类所在的根文件夹。

【问题讨论】:

    标签: php namespaces


    【解决方案1】:

    From the PHP documentation

    请注意,对于命名空间名称(包含命名空间的完全限定的命名空间名称 分隔符,例如 Foo\Bar 而不是全局名称,例如 FooBar), 前导反斜杠是不必要的,不推荐,因为导入名称必须是完整的 符合条件的,并且不会相对于当前命名空间进行处理。

    这意味着您可以并且应该在导入/别名时省略前导 \。

    【讨论】:

      【解决方案2】:

      如果你用这个方法呢?

      使用

      $_SERVER["DOCUMENT_ROOT"].'\namespace\ui\User'
      

      【讨论】:

        猜你喜欢
        • 2023-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-17
        • 2017-06-15
        • 2016-09-01
        • 2016-05-19
        • 2014-06-18
        相关资源
        最近更新 更多