是否可以在 Symfony 4 中的不同类上使用函数?
Posted
技术标签:
【中文标题】是否可以在 Symfony 4 中的不同类上使用函数?【英文标题】:Is it possible to use function on different classes in Symfony 4? 【发布时间】:2019-11-26 21:14:50 【问题描述】:我计划在我的项目中使用不同的实体。我创建了一个实体项目和实体用户。我需要从每个表中获取所有行,因此我使用了:
return $this->getDoctrine()->getRepository(project::class)->findAll();
但是很快,我将使用不同的实体,并且我想创建一个函数来接收实体名称并获取所有行:
private function ConnDB($table)
return $this->getDoctrine()->getRepository($table::class)->findAll();
但我对这段代码有不同的问题。怎么做?
【问题讨论】:
“不同的问题”并没有告诉我们任何事情。$table
的值是多少?你遇到了什么错误?
【参考方案1】:
只需将纯字符串作为参数:
private function ConnDB($name)
return $this->getDoctrine()->getRepository($name)->findAll();
然后在调用时使用::class
解引用:
$foo->ConnDB(MyClass::class);
【讨论】:
我应该在哪里存储这个函数,因为如果我在控制器类中创建它,并尝试在不同的函数中使用它(在同一个类中)它输出错误类试图调用函数“ connDB”来自命名空间“App\Controller”。以上是关于是否可以在 Symfony 4 中的不同类上使用函数?的主要内容,如果未能解决你的问题,请参考以下文章