Pie*_*NAY 1 php symfony doctrine-orm
我正在联接表,我想基于联接获得多维查询结果。
# AppBundle:ProductRepository
$this->createQueryBuilder('pr')
->select('pk.id', 'pk.name', 'pr.id', 'pr.label')
->join('pr.package', 'pk')
->getQuery()->getResult();
Run Code Online (Sandbox Code Playgroud)
如您所见Product,链接到一个Package(很多)
这是我得到的结果:
array(
array('id' => '1', 'name' => 'package 1', 'id1' => 1, 'label' => 'product 1'),
array('id' => '1', 'name' => 'package 1', 'id1' => 2, 'label' => 'product 2'),
array('id' => '2', 'name' => 'package 2', 'id1' => 3, 'label' => 'product 3'),
)
Run Code Online (Sandbox Code Playgroud)
这是我想要得到的:
array(
array(
'id' => '1',
'name' => 'package 1',
'products' => array(
array(
'id' => 1,
'label' => 'product 1',
),
array(
'id' => 2,
'label' => 'product 2',
),
),
),
array(
'id' => '2',
'name' => 'package 2',
'products' => array(
array(
'id' => 3,
'label' => 'product 3',
),
),
),
)
Run Code Online (Sandbox Code Playgroud)
有没有办法用Doctrine 2来水化这种多维数组?
我的意思是说与教义2,而不是与“后期生产” php循环
$this->createQueryBuilder('pr')
->select('partial pk.{id, name}, partial pr.{id, .label}')
->join('pr.package', 'pk')
->getQuery()
->getArrayResult()
;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
797 次 |
| 最近记录: |