0
私は連想配列としてデータベースから結果を取得する必要があります。私はこのガーデンに関連する庭園や家族が(1対多)です。だから各庭のために私は家族の配列を取得する必要があります。だから、庭は鍵でなければならず、家族の配列 - それは価値です。だから私が試した:Symfony Doctrine Group
public function getFamiliesInGardens($client)
{
$qb = $this->createQueryBuilder('g');
$qb
->select(['g.name as garden', 'family.name', 'family.id'])
->join('g.growing', 'growing')
->join('growing.plant', 'plant')
->join('plant.family', 'family')
->where('g.client = :client')
->orderBy('g.name')
->addOrderBy('growing.endDate', 'DESC')
->setParameter('client', $client);
$grow = $qb->getQuery()->getArrayResult();
return $grow;
}
私が得た:
[0] => array(3) {
["garden"]=> string(1) "1"
["name"]=>string(9) "Brassicas"
["id"]=> int(13)
}
[1] =>
array(3) {
["garden"]=> string(1) "1"
["name"]=> string(13) "Miscellaneous"
["id"]=> int(18)
}
しかし、私は期待して:私は庭でグループを追加する場合は
[0] => array(1) {
["1"] => array(2) {
[0] => array(2) {
["name"] =>string(9) "Brassicas"
["id"] => int(13)
},
[1] => array(2) {
["name"]=>string(9) "Miscellaneous"
["id"]=> int(18)
},
}
}
が、結果は最初と同じになりますが、庭繰り返されることなく一度だけ選択されます。家族も同じです。だから、私は配列を得るために何を変えることができますか?garden => families?