本文实例讲述了Symfony2安装第三方Bundles的方法。分享给大家供大家参考,具体如下:
大多数的Bundles都提了安装的介绍,下面来介绍基本的安装步骤:
一、添加composer依赖关系
在symfony里,用composer来管理依赖关系
1.找到Bundle的包的名称
在包的README里一般都告诉了我们它的名称,如果没有,可以在https://packagist.org网站里搜索到
2.通过composer来安装Bundle
知道了bundle的包名之后,我们可以通过composer来安装它
1
|
$ 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:
1
2
3
4
5
6
7
8
9
10
11
|
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array (
//...在这里注册
new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(),
);
}
//...
}
|
三、配置Bundle
有的包需要一些额外的配置在 app/config/config.yml文件里。包的文档会告诉我们关于怎样配置,也可以通过指令来参考包的配置
1
|
$ app/console config:dump-reference
|
例如TwigBundle:
1
|
$ app/console config:dump-reference TwigBundle
|
会得到如下的提示
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
# 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博客 ,转载时请注明出处及相应链接。
希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。