我目前正在开发一个备份系统,用于备份数据库转储和媒体文件。
我知道php app/console doctrine:schema:create --dump-sql
会为我创建数据库转储,但这不是我需要的。我需要完全从php类创建数据库转储文件,以便我可以使用它(例如,对其进行编码)。
如何使用symfony从类创建数据库转储?
答案 0 :(得分:2)
只需手动使用架构工具(示例可用于控制器操作):
$em = $this->get('doctrine')->getManager();
$schemaTool = new \Doctrine\ORM\Tools\SchemaTool($em);
$metadatas = $em->getMetadataFactory()->getAllMetadata();
$sqls = $schemaTool->getCreateSchemaSql($metadatas);