public static function synchronize($entityManager) { // read to an array $decodedArray = SitesXMLManager::read(); $root =& $decodedArray[0]['child'][0]['child']; foreach ($root as &$entry) { $dbObjects = SitesXMLManager::convertToDbObjects($entityManager, $entry); // Persist Parent Object (WhitelistEntry) $entityManager->persist($dbObjects['WhitelistEntry']); $entityManager->flush(); // Persist Child Objects (WhitelistEntryRes) foreach ($dbObjects['WhitelistEntryRes'] as &$whitelistEntryRes) { $entityManager->persist($whitelistEntryRes); $entityManager->flush(); } } }