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

从多行获取数据

从多行获取数据

PHP
慕尼黑的夜晚无繁华 2022-01-14 16:28:40
我想从列值为 的uid所有行中获取列的city值london。我试过这样:$this->getDoctrine()->getRepository(Personal::class)->findOneBy(['city' => 'london']);但后来我只从 1 行得到一个对象。我需要的只是一个看起来像这样的数组:数组(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
查看完整描述

2 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

使用findBy代替findOneBy。它为您提供了实体数组。


但是您无法定义应该获取哪一列。为此,您应该使用 DQL 来定义应该获取的内容。


例如使用查询生成器:


$queryBuilder = $this->createQueryBuilder()

    ->select('p.uid')

    ->from(Personal::class, 'p')

    ->where('p.city = \'london\'');


$uids = $queryBuilder->getQuery()->getResult();


查看完整回答
反对 回复 2022-01-14
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

尝试使用findBy

$this->getDoctrine()->getRepository(Personal::class)->findBy(['city' => 'london']);

findOneBy 方法只返回一行

简单条件


查看完整回答
反对 回复 2022-01-14
  • 2 回答
  • 0 关注
  • 185 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号