从多行获取数据

我想从列值为 的uid所有中获取列的citylondon

我试过这样:

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

但后来我只从 1 行得到一个对象。我需要的只是一个看起来像这样的数组:

数组(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }


慕尼黑的夜晚无繁华
浏览 216回答 2
2回答

拉风的咖菲猫

使用findBy代替findOneBy。它为您提供了实体数组。但是您无法定义应该获取哪一列。为此,您应该使用 DQL 来定义应该获取的内容。例如使用查询生成器:$queryBuilder = $this->createQueryBuilder()    ->select('p.uid')    ->from(Personal::class, 'p')    ->where('p.city = \'london\'');$uids = $queryBuilder->getQuery()->getResult();

人到中年有点甜

尝试使用findBy$this->getDoctrine()->getRepository(Personal::class)->findBy(['city' => 'london']);findOneBy 方法只返回一行见简单条件
打开App,查看更多内容
随时随地看视频慕课网APP