是否可以在 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 中的不同类上使用函数?的主要内容,如果未能解决你的问题,请参考以下文章

从 Python 中的不同类打印?

如何在 Spring MVC 中的不同类中创建动态 bean

从不同名称空间中的不同类访问变量

C# 一个列表中的不同类对象

通过 Swift 中的不同类调用委托方法

如何获取功能的不同类的值列表? [复制]