Symfony2——建立bundle
bundle就像插件或者一个功能齐全的应用,咱们在应用层上开发的应用的全部代码,包括:PHP文件、配置文件、图片、css文件、js文件等都会包含在bunde系统中。
能够经过两种方法建立bundle,一种是
经过命令行建立,一种是
经过手动建立相应的文件和文件夹。
一:经过命令行建立,以下:
图1
执行以上命令 src/Acme/HelloBundle
被建立,指定使用的配置文件格式yml(还能够使用xml和php),同时自动在 app/AppKernel.php
添加一行代码,使得bundle注册到kernel。
图2
Symfony2——建立一个简单的web应用(配置文件均已yml为例)
step 1:建立路由地址
路由的默认配置文件 app/config/routing.yml
,打开该文件你会看到当你建立bundle的时候,Symfony已经在该文件中添加了 AcmeHelloBundle
路由配置文件的入口,该入口会告诉Symfony到哪里加载AcmeHelloBundle
的路由配置。
图3
打开 Resources/config/routing.yml
定义URL对应的执行的控制器。
图4
路由设置包含了两方面,path对应了相应的URL,defaults指向URL执行的controller。占位符{name}是一个通配符,用来匹配URL中,如:/hello/jc 或者 /hello/jack 的 jc 或者 jack ,同时匹配的值做为参数传入到indexAction方法中。
step 2:建立controller
web应用系统解析相应的URL,交由symfony框架执行相应的controller(AcmeHelloBundle:Hello:index),该controller对应的是Acme\HelloBundle\Controller\Hellotroller类中的indexAction方法。
图5
controller其实就是一个PHP方法,该方法由咱们去建立,symfony可以执行的方法。
编写indexAction方法,并返回Response对象,最后由symfony框架输出Response对象。(Response类是Symfony框架提供的)
图6
step 3:建立输出模板