[英]Symfony2: How to override a vendor file
我知道如何覆盖Symfony2中捆绑软件的任何部分。 我跟着这个
而且有效。
但是,如果我想覆盖不属于捆绑软件的供应商文件夹中的文件,该怎么办?
在我的特定示例中,我需要覆盖
vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/Driver/XmlDriver.php
这可能吗? 谢谢你的帮助
您必须告诉EntityManager使用哪个元数据驱动程序:
<?php
$driver = new \Doctrine\ORM\Mapping\Driver\XmlDriver('/path/to/mapping/files');
$em->getConfiguration()->setMetadataDriverImpl($driver);
您可以使用扩展版本,而不是默认的XmlDriver
,例如
<?php
$driver = new \My\XmlDriver('/path/to/mapping/files');
$em->getConfiguration()->setMetadataDriverImpl($driver);
此代码段中的$em
是EntityManager。
有关如何编写和使用自己的Metadriver实现的更多详细信息,请参见http://docs.doctrine-project.org/en/latest/reference/metadata-drivers.html 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.