Php 是否有一个单件类命名空间的快捷方式
我目前的代码如下:Php 是否有一个单件类命名空间的快捷方式,php,namespaces,static-methods,Php,Namespaces,Static Methods,我目前的代码如下: namespace Libraries; class_alias('Libraries\ORM', 'ORM'); class ORM { public function __construct() {} static public function someMethod() { // do something } } 我想我可以像您在上面看到的那样缩短名称空间,所以我只需要调用ORM::someMethod()而不是
namespace Libraries;
class_alias('Libraries\ORM', 'ORM');
class ORM
{
public function __construct() {}
static public function someMethod()
{
// do something
}
}
我想我可以像您在上面看到的那样缩短名称空间,所以我只需要调用ORM::someMethod()代码>而不是\Libraries\ORM::someMethod()代码>
(我在另一个名称空间中使用ORM类,让我们说“Project”)
这是可能的还是正确的解决方案?
我知道我可以将类存储在全局名称空间中,但是我仍然需要使用全局斜杠,比如:\ORM::someMethod()代码>
谢谢 导入类名时只需输入类名即可:
namespace SomethingEntirelyDifferent;
use Libraries\ORM as ORM;
ORM::someMethod();
导入类名时,只需输入类名即可:
namespace SomethingEntirelyDifferent;
use Libraries\ORM as ORM;
ORM::someMethod();
是的,但是我是否需要将use Libraries\ORM作为ORM包含在内代码>在我需要使用ORM的每个文件中?还有其他方法吗?没有,你可以创建你自己的自动加载程序,或者如果你在项目中使用composer,你可以通过composer自动加载程序自动加载你的类,配置composer.json看看:好的,谢谢,我将深入讨论自动加载程序的内容!谢谢你的帮助,我会在几分钟内接受答案;)是的,但是我是否需要将use Libraries\ORM作为ORM包含在内代码>在我需要使用ORM的每个文件中?还有其他方法吗?没有,你可以创建你自己的自动加载程序,或者如果你在项目中使用composer,你可以通过composer自动加载程序自动加载你的类,配置composer.json看看:好的,谢谢,我将深入讨论自动加载程序的内容!谢谢你的帮助,我会在几分钟内接受答案;)