Symfony Doctrine 数组结果的展平数组结果

2023-11-24

通过存储库,我得到了一个数组结果(每个数组都是一个实体对象),如下所示:

array(
  0 => object of type entity,
  1 => another object of type entity,
  2 => another object of type entity,
)

每个对象都有一些属性,例如 id 和 name 等。 但我想要的是仅使用每个对象的 id 来展平整个数组。

我想要的是这个(仅使用 ID 来展平数组):

Array
(
    [0] => 1
    [1] => 6
    [2] => 23
)

我的解决方案:

$ids = array_map($transform = function($entity) {
    if ($entity instanceof Entity) {
       return $entity->getId();
    }
 }, $myGreatDbResult);

我的解决方案有效,但是有更好的方法来获得这个结果吗?


获得标识符数组后[0 => ['id' => 1], 1 => ['id' => 6], 2 => ['id' => 26] ...]只是你必须使用array_column函数从输入数组中的单个列获取值:

$ids = array_column($result, 'id');

从 PHP 5.5.0 开始

Output:

Array
(
    [0] => 1
    [1] => 6
    [2] => 23
    ...
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Symfony Doctrine 数组结果的展平数组结果 的相关文章

随机推荐