我从带有@提及标签的文本字符串中提取了两个输入的用户名。
现在我想将它们放入 foreach 循环中,以便我可以使用我的学说实例来搜索他们的用户名。
我的代码:
function find(TextEntity $text)
{
preg_match_all('/@([a-zA-Z0-9]+)/', $text->getText(), $usernames);
$extractedText = implode('", "', $usernames[1]);
}
我得到的结果:
“约翰”、“简”
我找不到提取它们的方法,因此我可以在 foreach 循环中一一使用。
所以我的尝试是:(更新: 工作解决方案)
$usernames = $usernames[1];
$query = $this->em->getRepository(User::class)
->createQueryBuilder('m')
->select('m')
->where('m.email IN (:emails)')
->setParameter('emails', $usernames)
->getQuery()
->getResult();
汪汪一只猫