1
for(...) {
$menuItem = new MenuItem();
$menuItem->setName($itemName[$i]);
$menuItem->setDescription($itemDescription[$i]);
$menuItem->setprice($itemPrice[$i]);
$menuItem->setMenuCatagory($menuCatagory);
$em = $this->getDoctrine()->getManager();
$em->persist($menuCatagory);
$em->persist($menuItem);
}
$em->flush();
$ em = $ this-> getDoctrine() -> getManager(); for 루프 외부 또는 올바르게 유지할 때마다 getManager를해야합니까?각 지속 후에 getManager가 더 효율적입니까?
'$ em-> flush()'를 루프 외부에 두는 것도 올 바릅니다. 더군다나 정보를 잃지 않고 쿼리를 한 번만 실행하면 성능이 향상됩니다. –
맞습니다. '플러시'작동 방식이 잘못되었습니다. [docs에 대한이 링크] (http://symfony.com/doc/current/book/doctrine.html#persisting-objects-to-the-database)는'flush'의 사용에 대해 더 자세히 설명합니다. 내 대답을 업데이트했습니다. – Sehael