Symfony2之建立一個簡單的web應用

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
    其中indexAction中$name參數是配置文件中 path 裏面的佔位符{name}, http://localhost/app_dev.php/hello/Ryan能夠看到相應的輸出結果。
 
step 3:建立輸出模板
相關文章
相關標籤/搜索