是否存在命名空间单例类的快捷方式

pas*_*ert 0 php static-methods namespaces

我目前的代码如下:

namespace Libraries;

class_alias('Libraries\ORM', 'ORM');

class ORM 
{
    public function __construct() {}

    static public function someMethod()
    {
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为我可以快速命名空间,如上所示,所以我只需要调用ORM::someMethod();而不是\Libraries\ORM::someMethod();

(我在另一个命名空间中使用ORM类,让我们说"项目")

这是可能的还是什么是正确的解决方案?我知道我可以在类存储在一个全局命名空间,但我仍然需要使用全球斜线,如:\ORM::someMethod();.

谢谢!

Jon*_*Jon 5

只需在导入时为别名设置别名:

namespace SomethingEntirelyDifferent;

use Libraries\ORM as ORM;

ORM::someMethod();
Run Code Online (Sandbox Code Playgroud)