一切都在标题中。当我创建我的对象时,new Object
我有一个错误说我的类没有找到。但是当我做new \Object
每件事时,一切都像魅力一样工作。希望有人能帮助我理解。先感谢您。
问问题
140 次
1 回答
1
为方便起见,PHP 现在支持命名空间,以便将您的对象“打包”或“分类”到不同的“类别”中,这基本上允许更轻松的自动加载和相关依赖包含。
\
是根命名空间,简单地说就是在“无命名空间”中使用对象。这仅在子命名空间中的对象需要与当前命名空间无关的对象时派上用场,例如:
\HTTP\Request\Properties()
想要扩展 SPL 对象ArrayObject
,如果您尝试 extend ArrayObject
这样做会失败,因为您当前的命名空间是\HTTP\Request
,并且 ArrayObject 位于根命名空间中。为了突破当前的命名空间,您必须\
(根/突破)命名空间。
当您想使用不同的供应商包时,命名空间非常有用,例如 Zend 框架库或 SwiftMailer,您所要做的就是为所有供应商包发布一个自动加载过程并继续工作和实现,如下所示:
/vendor/Zend/[zend packages]
$algos = \Zend\Crypt\Hash::getSupportedAlgorithms();
于 2013-09-27T21:19:54.083 回答