我有关联数组alldept。 我现在想要来自数组的'name'元素,例如id '1';
如何访问ID并输出'name'?
ID保存在$result[$i]['abteilung']
非常感谢!
$manager = $this->getDoctrine()
->getManager('olddb')
->getRepository('ChrisOldUserBundle:BpDepartment');
$dept = $manager->findBy([],['name' => 'ASC']);
$alldept = array();
foreach ($dept as $singledpt){
$alldept[] = array("id" => $singledpt->getId(),
"name" => $singledpt->getName()
);
}
答案 0 :(得分:3)
当你自己构建这个数组时,以后来可用的方式构建它似乎是明智的。
那么为什么不像这样构建数组
$manager = $this->getDoctrine()
->getManager('olddb')
->getRepository('ChrisOldUserBundle:BpDepartment');
$dept = $manager->findBy([],['name' => 'ASC']);
$alldept = array();
foreach ($dept as $singledpt) {
$alldept[ $singledpt->getId() ] = $singledpt->getName();
}
现在,如果你知道你想要dept = 1的名字,你就可以了
echo $alldept[1];
答案 1 :(得分:1)
我建议将id
作为关键字,将name
作为值:
$manager = $this->getDoctrine()
->getManager('olddb')
->getRepository('ChrisOldUserBundle:BpDepartment');
$dept = $manager->findBy([],['name' => 'ASC']);
$alldept = array();
foreach ($dept as $singledpt){
$alldept[$singledpt->getId()] = $singledpt->getName();
}
注意:我假设
getId
将是唯一的
然后,要获取name
,您只需输入$alldept[$id]
。
这可能不是一个答案,只是另一种选择。你可以避免循环。