Symfony2安装第三方Bundles实例详解
作者:Sun
本文实例讲述了Symfony2安装第三方Bundles的方法。分享给大家供大家参考,具体如下:
大多数的Bundles都提了安装的介绍,下面来介绍基本的安装步骤:
一、添加composer依赖关系
在symfony里,用composer来管理依赖关系
1.找到Bundle的包的名称
在包的README里一般都告诉了我们它的名称,如果没有,可以在https://packagist.org网站里搜索到
2.通过composer来安装Bundle
知道了bundle的包名之后,我们可以通过composer来安装它
$ composer require codeguy/upload
codeguy/upload是一个上传文件的bundle,在上一章《Symfony2使用第三方库Upload制作图片上传实例详解》中我们使用到。
执行上面的指令,composer会给你的项目选择一个最好版本的bundle,把它添加到composer.json中,并将bundle下载到vendor/目录下。如果你想要下载一个指定的版本,在bundle的包名后增加:版本号
二、注册Bundle
现在,第三方的bundle已经安装到你的symfony项目中了,在vendor/目录下。此时我们需要在app/AppKernel.php里注册安装好的bundle
例如DoctrineFixturesBundle:
class AppKernel extends Kernel { public function registerBundles() { $bundles = array( //...在这里注册 new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(), ); } //... }
三、配置Bundle
有的包需要一些额外的配置在 app/config/config.yml文件里。包的文档会告诉我们关于怎样配置,也可以通过指令来参考包的配置
$ app/console config:dump-reference
例如TwigBundle:
$ app/console config:dump-reference TwigBundle
会得到如下的提示
# Default configuration for "TwigBundle" twig: exception_controller: 'twig.controller.exception:showAction' # Deprecated since 2.6, to be removed in 3.0. Use twig.form_themes instead form: resources: # Default: - form_div_layout.html.twig # Example: - MyBundle::form.html.twig form_themes: # Default: - form_div_layout.html.twig # Example: - MyBundle::form.html.twig globals: # Examples: foo: "@bar" pi: 3.14 # Prototype key: id: ~ type: ~ value: ~ autoescape: # Defaults: - Symfony\Bundle\TwigBundle\TwigDefaultEscapingStrategy - guess autoescape_service: null autoescape_service_method: null base_template_class: ~ # Example: Twig_Template cache: '%kernel.cache_dir%/twig' charset: '%kernel.charset%' debug: '%kernel.debug%' strict_variables: ~ auto_reload: ~ optimizations: ~ paths: # Prototype paths: ~
具体的第三方bundle安装方法,和该bundle的使用方法都可以在它的README文件里查看。
本文永久地址:http://blog.it985.com/7059.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。
更多关于PHP框架相关内容感兴趣的读者可查看本站专题:《php优秀开发框架总结》,《codeigniter入门教程》,《CI(CodeIgniter)框架进阶教程》,《Yii框架入门及常用技巧总结》及《ThinkPHP入门教程》
希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。