Php 如何检查任何实体在任何字段上是否包含指定字符串?

Php 如何检查任何实体在任何字段上是否包含指定字符串?,php,symfony,doctrine-orm,Php,Symfony,Doctrine Orm,如何检查任何实体在任何字段上是否包含指定字符串 让我们假设我们有许多实体,如博客、新闻、文章等。每个实体可以有一些字段,如标题、内容、作者等。但并非所有实体都有相同的字段。它们可以不同。现在我们要检查是否有实体在其字段中的任何字段上包含“cat”。重要的是我不想得到这些实体。我只想知道是否有这样的实体 这是因为我有文本编辑器(比如MCE),它允许上传文件并将它们(URL)直接放在编辑字段中。例如:邮件正文或文章内容中的图像。所以我有上传文件的机制,但我不知道上传的文件是否仍然需要,或者我可以删除

如何检查任何实体在任何字段上是否包含指定字符串

让我们假设我们有许多实体,如博客、新闻、文章等。每个实体可以有一些字段,如标题、内容、作者等。但并非所有实体都有相同的字段。它们可以不同。现在我们要检查是否有实体在其字段中的任何字段上包含“cat”。重要的是我不想得到这些实体。我只想知道是否有这样的实体

这是因为我有文本编辑器(比如MCE),它允许上传文件并将它们(URL)直接放在编辑字段中。例如:邮件正文或文章内容中的图像。所以我有上传文件的机制,但我不知道上传的文件是否仍然需要,或者我可以删除它们,因为删除实体后,文件不会被删除

因此,我试图检查文件名是否在任何字段的任何实体中使用。我当然可以这样做:

$builder = $this->manager->createQueryBuilder();
$builder->select('COUNT(blog)');
$builder->from('AppBundle:Blog', 'blog');
$builder->where('blog.content LIKE :term');
$builder->setParameter('term', '%' . $file->getFilename() . '%');
但这样,我必须记住为每个字段添加这样的查询,这些字段可以由文本编辑器编辑。我不想记住

我正在寻找简单而有弹性的解决方案。我考虑SOLR,但SOLR的实体数量将非常少。这对我来说毫无意义——就像用巴祖卡杀死蚊子一样(坏例子。这很有意义——被诅咒的蚊子。但你知道)

我用的是Symfony2和条令

有什么想法吗