"使用"php语句多个?

mow*_*ixo 5 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;
Run Code Online (Sandbox Code Playgroud)

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

use Doctrine\ORM\Mapping\*;
Run Code Online (Sandbox Code Playgroud)

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

Jam*_*all 5

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

use Doctrine\ORM\Mapping as ORM;

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

/**
 * @ORM\Column(type="int")
 */
 protected $name;
Run Code Online (Sandbox Code Playgroud)

等等...

  • @ user2111499它应该可以在任何地方使用,因为它是一个PHP功能.你能展示一些代码吗? (2认同)

Ale*_*rek 2

不,这在设计上是不可能的 \xe2\x80\x93 。

\n\n

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

\n\n
use Foo\\*;\nuse Bar\\*;\n
Run Code Online (Sandbox Code Playgroud)\n\n

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

\n\n
$a = new Something();\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在,该类Something可能需要自动加载,但要做到这一点,php 需要解析类的完整命名空间路径:Foo\\SomethingBar\\SomethingSomething或者我们指的是当前命名空间内的类?

\n