我正在使用Symfony创建我的第一个Web应用程序。 现在我找到了一个解决方案,使我的代码更具可定制性和可扩展性。 但是为了使这个解决方案在我的应用程序中运行,我需要一些帮助。
在Symfony中是否可以插入密钥中的数据 - > value数组到数据库中的表?
例如,我有一个看起来像这样的数组: 数组('Titel'=>'The Hobbit','Music'=>'添加Sheeron')
现在我需要把它放到数据库表X中,看起来像: 标题(varchar(255)) 音乐(varchar(255))
如何将数组插入数据库?此外,数组可以包含需要插入到具有其他键名的另一个表中的数据。
换句话说,如何将数组键映射到数据库中的字段,以便我可以使用它将其插入表中?
答案 0 :(得分:1)
好吧,假设您的数组名为$music
。它看起来像这样:
$music = array('Titel' => 'The Hobbit', 'Music' => 'Add Sheeron');
现在,您需要创建一个实体的新实例,该实例将映射到数据库中的相应表。为此,您需要创建一个新实体,然后保持并刷新它。
$em = $this->container->get('doctrine.orm.entity_manager');
$music = array('Titel' => 'The Hobbit', 'Music' => 'Add Sheeron');
$entityMusic = new MusicEntity(); //This is your entity
$entityMusic->setTitel($music['title']); //Respective entity methods
$entityMusic->setMusic($music['Music']);
$em->persist($entityMusic);
$em->flush();
如果要插入多个值,可以运行基本for循环以插入所需的所有值。
对于问题的第二部分,您将需要查看实体的关系和映射。文档here
答案 1 :(得分:0)