【发布时间】:2018-11-23 15:58:39
【问题描述】:
在我的控制器中,我列出了我拥有的所有实体:
use App\Entity\Members;
use App\Entity\Products;
use App\Entity\Projects;
但是因为会自动创建新实体,所以我需要类似
use AllEntities;
这可能吗?
【问题讨论】:
标签: php symfony controller namespaces entity
在我的控制器中,我列出了我拥有的所有实体:
use App\Entity\Members;
use App\Entity\Products;
use App\Entity\Projects;
但是因为会自动创建新实体,所以我需要类似
use AllEntities;
这可能吗?
【问题讨论】:
标签: php symfony controller namespaces entity
PHP 中没有可用的选项来一次从特定命名空间导入所有类。
为了使用特定的类,您需要定义所谓的完全限定类名,这意味着对每个类使用 use 关键字,或者另一个选项是导入命名空间,但在实例化或使用该类时一个静态的例子,你需要使用导入的命名空间,后跟\ 和类名。
例如:
use Foo\Bar;
$classOne = new Bar\ClassOne();
$classTwo = new Bar\ClassTwo();
这在只有一个以Bar 结尾的命名空间被导入时有效。
否则,您需要为每一个别名 - 这同样适用于重复的类名 - 它们也需要别名。这是关于内置的可能性。
当涉及到您的特定情况时 - 如果您自动创建新实体,这意味着您生成新代码 - 我在这里看到的唯一解决方案是扩展您的生成能力,以便在您需要的地方生成一些新代码。
【讨论】: