Doctrine 2得到对id =>值

时间:2016-08-03 17:14:12

标签: php doctrine-orm

你好,我有一个简单的问题。

我使用 Doctrine 2 ,我需要从特定的表中获取对作为数组。 例如,我的表格"类别" ,列(' id',' name',' description& #39;,...)我希望以数组格式(category.id => category.name)获取所有行,如下所示:

array(
   7 => 'News',
   8 => 'Sport',
   11 => 'Work'
)

(在这个例子中我只有3个类别ids 7,8,11)。

有一些简单快捷的方法吗?

4 个答案:

答案 0 :(得分:0)

试试这个

$result = $query->getResult(Query::HYDRATE_ARRAY);

OR

$result = $query->getArrayResult();

了解更多信息。见link

categoryId转换为数组键,将categoryName转换为值

$newArr=[];
foreach($result as $cat){
    $newArr[] = [$cat['id'] => $cat['name']];
}

答案 1 :(得分:0)

以数组形式获取结果

$result = $query->getResult(Query::HYDRATE_ARRAY);

然后您可以使用a来修改结果,如下所示:

$modifiedResults = array();

foreach ($results as $row)
{
    array_push($modifiedResults, array($row['id'] => $row['names']));
}

答案 2 :(得分:0)

我认为,在这种情况下,您应该编写自己的自定义保水器Custom Hydration Modes

答案 3 :(得分:-1)

比以前的答案简单得多。 您可以使用PDO常量和Doctrine的数据库访问层(DBAL)来完成此操作。

从控制器:

<img :src="'/images/'+item.images" alt="image" />

这将从您的问题中得出答案。