Php 创建使用WhiteOctoberBundle扩展TCPDF的类
为了在Symfony中创建PDF文件,我将使用类。两者都是通过composer安装的 我需要通过扩展TCPDF类来创建自定义页眉和页脚,如中所述 但对我来说,唯一可行的解决方案是直接在供应商中扩展TCPDF类,然后在vendor/whiteoctober/TCPDF bundle/DependencyInjection/Configuration.php中的getConfigTreeBuilder()方法内的WhiteOctorberBundle中将MYPDF类设置为默认类 因此,我的Configuration.php文件如下所示:Php 创建使用WhiteOctoberBundle扩展TCPDF的类,php,symfony,tcpdf,Php,Symfony,Tcpdf,为了在Symfony中创建PDF文件,我将使用类。两者都是通过composer安装的 我需要通过扩展TCPDF类来创建自定义页眉和页脚,如中所述 但对我来说,唯一可行的解决方案是直接在供应商中扩展TCPDF类,然后在vendor/whiteoctober/TCPDF bundle/DependencyInjection/Configuration.php中的getConfigTreeBuilder()方法内的WhiteOctorberBundle中将MYPDF类设置为默认类 因此,我的Confi
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('white_october_tcpdf');
$rootNode
->children()
->scalarNode('file')->defaultValue('%kernel.root_dir%/../vendor/tecnick.com/tcpdf/tcpdf.php')->end()
->scalarNode('class')->defaultValue('MYPDF')->end()
->end();
$this->addTCPDFConfig($rootNode);
return $treeBuilder;
}
问题在于,直接在供应商中扩展TCPDF类是一种不好的做法,它会导致MYPDF类在每次更新TCPDF包时消失。我应该将MYPDF类放置在何处,这样它就可以保持对WhiteOctoberBundle的访问,同时不会被放置在供应商文件夹中?Bundle作者:此处:-)这是在中,但供快速参考:
MYPDF
类,并将其放置在您正常的Symfony2代码库中的某个位置-比如说在src/Acme/DemoBundle/MYPDF.php
该类需要扩展通过供应商引入的基本TCPDF类。如果不是,则会引发异常config.yml
或类似文件中:
white_october_tcpdf:
class: 'Acme\DemoBundle\MYPDF'
$pdfObj = $container->get("white_october.tcpdf")->create();
这将为您的MYPDF
类提供一个新实例Symfony官方网站建议
AppBundle\Utils
资料来源: