“使用”php语句多个?

时间:2013-02-26 13:58:34

标签: php symfony silex

有没有办法进行“多次使用”?

我在Silex中使用插件来使用ORM,并且在每个实体中我都必须这样使用:

use Doctrine\ORM\Mapping\Entity,
    Doctrine\ORM\Mapping\Table,
    Doctrine\ORM\Mapping\Id,
    Doctrine\ORM\Mapping\Column,
    Doctrine\ORM\Mapping\GeneratedValue,
    Doctrine\ORM\Mapping\ManyToOne,
    Doctrine\ORM\Mapping\ManyToOne;

所以,我的问题是,PHP中是否存在像Java一样的“多次使用”?我的意思是:

use Doctrine\ORM\Mapping\*;

或者可能使用Silex / Symfony制作的自动加载技术?

2 个答案:

答案 0 :(得分:5)

为什么不这样做......

use Doctrine\ORM\Mapping as ORM;

然后在你的注释中......

/**
 * @ORM\Column(type="int")
 */
 protected $name;

等等......

答案 1 :(得分:2)

不,这是不可能的 - 按设计。

想象一下,你有两个“通配符”用法,如下所示:

use Foo\*;
use Bar\*;

现在,在代码中的某个位置,您将访问其中一个名称空间的类,如下所示:

$a = new Something();

现在,类Something可能需要自动加载,但为了这样做,php需要解析类的完整名称空间路径:Foo\SomethingBar\Something?或者我们是指当前名称空间中的类Something