gpt4 book ai didi

php - 如何得到一个一维标量数组作为一个学说dql查询结果?

转载 作者:IT老高 更新时间:2023-10-28 11:50:49 26 4
gpt4 key购买 nike

我想从 Auction 表的 id 列中获取一组值。如果这是一个原始 SQL,我会写:

SELECT id FROM auction

但是当我在 Doctrine 中执行此操作并执行时:

$em->createQuery("SELECT a.id FROM Auction a")->getScalarResult(); 

我得到一个这样的数组:

array(
array('id' => 1),
array('id' => 2),
)

相反,我想得到一个这样的数组:

array(
1,
2
)

如何使用 Doctrine 做到这一点?

最佳答案

PHP < 5.5

您可以使用 array_map,并且由于每个数组只有一个项目,因此您可以优雅地使用'current' 作为回调,而不是写一个 closure .

$result = $em->createQuery("SELECT a.id FROM Auction a")->getScalarResult();
$ids = array_map('current', $result);

See Petr Sobotka's answer below for additional info regarding memory usage.

PHP >= 5.5

作为 jcbwlkr's answered below , 推荐使用 array_column 的方式。

关于php - 如何得到一个一维标量数组作为一个学说dql查询结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11657835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com