为了账号安全,请及时绑定邮箱和手机立即绑定

如何将数组传递给学说查询 findBy?

如何将数组传递给学说查询 findBy?

PHP
大话西游666 2023-04-28 16:45:48
在我有如下过滤器参数之前:width: 195diameter: 15load: 91所以,我只是使用以下查询来检索结果。$list = $this->entityManager->getRepository(List::class)->findBy($filterArray);现在,我的要求改变了。我可以传递逗号分隔的字符串width: 195,245diameter: 15load: 91所以,首先我将这个字符串转换成数组:[  "width" => [    0 => "195"    1 => "245"  ]  "diameter" => [    0 => "15"  ]  "load" => [    0 => "91"  ]]现在我不确定如何进行查询。过滤器参数可以变化。没有必要传递所有参数。
查看完整描述

1 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

使用findBy函数,您可以使用数组参数进行过滤。例如,如果您需要查找实体,width: 195,245您可以像这样传递数据

['width' => [195, 245]]

要删除空参数,您可以使用array_filter函数

$list = $this->entityManager->getRepository(List::class)->findBy(array_filter($filterArray));

稍后如果你的参数会增长,你可以使用 Doctrine QB 来过滤你的数据


查看完整回答
反对 回复 2023-04-28
  • 1 回答
  • 0 关注
  • 97 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信