我只是在玩IDE,我注意到当我在类上使用"Fix代码“选项时,它在以下类型的顶部添加了一堆行
use Someclass;
use \Ano\therClass;
use Iface;
...
我想知道这样做的确切目的是什么,因为这些类将按需加载,是否需要显式声明将使用哪些类?
发布于 2014-10-04 12:30:11
当你创建一个类时,用关键字namespace
命名它的包
<?php
/**
* CacheException.php
*/
namespace Doctrine\ORM\Cache;
class CacheException extends Exception {}
在其他地方,use
只能从包中导入一个类:
use Doctrine\ORM\Cache\CacheException;
throw new CacheException('Failed to cache');
另外,use
用它的所有类导入覆盖包:
use Doctrine\ORM\Cache;
throw new CacheException('Failed to cache');
更多信息来自http://php.net/manual/en/language.namespaces.importing.php
发布于 2014-10-04 12:21:57
通过使用use
,您基本上可以拥有相同名称的不同对象、函数等,这要归功于名称空间。当您在代码中编写use
时,您告诉PHP导入名称空间的项并给它一个别名。
阅读更多:http://php.net/manual/en/language.namespaces.importing.php
https://stackoverflow.com/questions/26192680
复制相似问题