我构建了一些CMS,我可以从管理面板更改参数(parameters.yml)。用户(admin)将能够更改数据库连接(名称,主机等)。但是我需要在那之后处理错误并让他回滚或类似的东西。
我需要什么: - 参数更改后建立与数据库的连接 - 检查是否存在等。
我能做什么: - 制作\ PDO的新实例并尝试/捕获等。
我更喜欢什么: - 某种symfony / doctrine帮助。
我有什么可以代替新的PDO吗?或者meyby我的想法是错误的? :)
答案 0 :(得分:0)
您可以使用Doctrine DBAL Connection工厂。在您的控制器(或服务)中,您可以从容器中获取“doctrine.dbal.connection_factory”服务,并使用新参数创建新连接:
https://github.com/doctrine/DoctrineBundle/blob/master/ConnectionFactory.php#L51
然后尝试连接它:
https://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Connection.php#L350
您可以在这里捕捉可能发生的错误。
希望有所帮助