【问题标题】:Calling a static method from a class in another namespace in PHP从 PHP 中另一个命名空间中的类调用静态方法
【发布时间】:2011-09-28 13:45:12
【问题描述】:

下面的代码给了我这个错误:Class 'MyNamespace\Database' not found。如何从一个内部引用不属于任何命名空间的类?

Class Database
{
    public function request()
    {
    }
}

namespace MyNamespace
{
    class MyClass
    {
        public function myFuction()
        {
            Database::request();
        }
    }
}

【问题讨论】:

  • 我相信这可以在 C++ 中通过 ::Database::request() 解决,但我尝试在 PHP 中没有成功 ;)
  • 确实;解决方案是等效的,但在 PHP 中,命名空间“范围解析运算符”的排序是 \ ,而不是 ::。

标签: php namespaces static-methods


【解决方案1】:

试试

\Database::request();

另见Namespace Basics Example 1 in the PHP Manual

【讨论】:

  • 哇,真快!谢谢,它有效,它甚至比它的 C++ 对应物更丑:p
猜你喜欢
  • 2019-06-02
  • 2021-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-31
  • 1970-01-01
相关资源
最近更新 更多