【发布时间】:2018-08-04 07:23:20
【问题描述】:
多年来,我一直在为我们的内部闭源项目维护 PHP 框架。
当我更新此内容并使用 PHP 7 保持编码标准时,我注意到许多开发人员在代码中调用的类和命名空间中使用 \。
例如
class ClassName extends ParentClass implements
\ArrayAccess,
\Countable,
\Serializable
{
// constants, properties, methods
}
或者例如在类的函数中调用类
public function featured()
{
// Check for request forgeries
\Session::checkToken() or jexit(\Text::_('JINVALID_TOKEN'));
$user = \Factory::getUser();
$ids = $this->input->get('cid', [], 'array');
$values = ['featured' => 1, 'unfeatured' => 0];
$task = $this->getTask();
$value = \ArrayHelper::getValue($values, $task, 0, 'int');
}
为什么使用 \ 以及它的目的是什么,因为它也可以在没有 \ 的情况下工作。
因为我在网上看不到任何信息,所以 \ 在类和命名空间中的用途。
【问题讨论】:
-
在开头使用 \ 指定类在全局命名空间中。没有它它也可以工作,但如果你开始声明自己的命名空间,你需要它,因为它与你当前的命名空间不同。
标签: php class namespaces