国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Symfony2目錄結(jié)構(gòu)說明

2019-11-15 01:50:14
字體:
供稿:網(wǎng)友
Symfony2目錄結(jié)構(gòu)說明

了解框架的目錄結(jié)構(gòu)是框架快速入門的一個途徑,一個成熟的框架,每個功能模塊都被劃分存放在不同的目錄。

Symfony2一級目錄結(jié)構(gòu):

├── app                //這目錄下包含了,配置文件(應(yīng)用的配置文件會被import到這里面的配置文件中才生效)、緩存的類、緩存的模板├── bin├── composer.json├── composer.lock├── LICENSE├── README.md├── src                //我們編寫的應(yīng)用存放在這個目錄下(包含Controller、Model、View、路由配置文件、應(yīng)用的配置文件等)├── UPGRADE-2.2.md├── UPGRADE-2.3.md├── UPGRADE-2.4.md├── UPGRADE.md├── vendor            //Symfony2的核心模塊(HttpKernel組件、DependencyInjection組件等)和第三方插件(最常用的第三方插件SonataAdmin)存放在這目錄下└── web               //入口腳本文件存放在這目錄下

以下為Symfony2二級目錄和子目錄的主要說明

web目錄主要文件說明:

├── app_dev.php                          //調(diào)試模式下的入口文件(在調(diào)試模式下可以額外輸出應(yīng)用的運行信息,包括加載時間、執(zhí)行的路由、執(zhí)行sql語句等)├── apple-touch-icon.png├── app.php                              //生產(chǎn)環(huán)境下的入口文件(相當(dāng)于TP框架index.php作用)├── bundles├── config.php├── favicon.ico├── robots.txt

app目錄主要目錄和文件說明:

├── AppCache.php├── AppKernel.php                                //入口文件里面會初始化一個AppKernel類,AppKernel類就是在這個文件里面,Appkernel類的主要功能是初始化整個web應(yīng)用的Bundle。                                                 //包括Symfony2框架的核心Bundle、第三方插件的Bundle、我們自己編寫的應(yīng)用的Bundle,Bundle在Symfony2里面就相當(dāng)于一個具有完成                                                 //某一功能的完整的包,而且我們要用的Bundle都必須在AppKernel類里面注冊。                                                 ├── autoload.php                                 //該文件負責(zé)自動加載注冊在里面的類,通常我們不需要手動修改它├── bootstrap.php.cache                          //Symfony2核心的類的緩存文件,Symfony2框架必須用到的核心的類都會被編寫整理到這個文件里面。這樣做的目的是減少運行的時候打開                                                 //文件的個數(shù),提高運行的速度。因為不同的類都被存放在不同的文件里面,如果沒有把這些必要的類緩存在一個文件里面,那么我們每次運行                                                 //都要打開多個文件。如果把這些必要的類整理到一個文件里面,那么我們每次運行這些類就在同一個文件里面了。例如:Request類、Response類、                                                 //Container類、Kernel類等都會被緩存到這個文件里面。所以,如果我們想在 Request類 里面 echo '在Request里面調(diào)試'; 這樣的語句,我們就把                                                 //這語句編寫在bootstrap.php.cache文件下的Request類而不是symfony/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Request.php                                                 //里面的Request類。其實symfony/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Request.php里面的Request類就被緩存到bootstrap.php.cache                                                 //里了                                                 ├── cache                                        //緩存目錄,按不同模式(生成模式、調(diào)試模式)緩存。主要緩存了模板文件、Container類、路由映射相關(guān)數(shù)據(jù)等│ ├── dev│ └── PRod├── check.php├── config                                       //存放配置文件的目錄,config_dev.yml和config_prod.yml才是被Symfony2框架加載的配置文件。但是為了方便管理,我們會把不同模塊的配置                                                 //編寫到不同配置文件中,要使這些配置文件生效,那么我們還需要import它們進config_dev.yml和config_prod.yml。                                                 │ ├── config_dev.yml                           //調(diào)試模式的配置文件    │ ├── config_prod.yml                          //生成模式的配置文件│ ├── config_test.yml│ ├── config.yml                               //通用的配置文件,只要import進相應(yīng)的調(diào)試模式下的配置文件,就可以生效│ ├── parameters.yml                             //存放配置文件使用的變量,例如:數(shù)據(jù)名、數(shù)據(jù)庫密碼、數(shù)據(jù)庫host等等│ ├── parameters.yml.dist│ ├── routing_dev.yml                          //調(diào)試模式下的路由配置文件,我們在src里面編寫的路由配置文件需要import到這個文件寫才可以生效│ ├── routing.yml                              //通用路由配置文件│ └── security.yml                             //防火墻配置文件,這里的防火墻是web應(yīng)用防火墻,不是服務(wù)器的防火墻,里面配置有角色權(quán)限、ACL等,這個文件需要config_*.php import進去才可以生效├── console├── logs                                         //Symfony2運行的日志,同理,不同模式下有不同的日志│ ├── dev.log│ └── prod.log├── phpunit.xml.dist├── Resources│ └── views└── SymfonyRequirements.php

src下的一個demo的目錄說明:

├── DemoBundle                               //src目錄下存放的就是我們應(yīng)用層的代碼,一個功能就可以組織成一個Bundle,例如簡單一點的一個購物車功能、復(fù)雜一點的                                             //一個博客系統(tǒng)都可以組織成一個Bundle。│ ├── AcmeDemoBundle.php                   //還記得app/AppKernel.php嗎?每一個Bundle要被Symfony2框架加載并起作用,都需要把Bundle注冊到AppKernel類,其實就是                                             //把這個文件里面的Bundle類注冊到AppKernel類,我們可以手動添加到AppKernel類,也可以通過命令行生成一個Bundle的時候                                             //添加到AppKernel里面。│ ├── Command│ ├── Controller                           //Controller目錄,顧名思義,這個目錄下存放的就是Controller類,如果不懂什么是Controller,麻煩請先學(xué)習(xí)MVC│ ├── DependencyInjection                  //該目錄存放對AcmeDemoBundle的擴展│ ├── EventListener                        //該目錄存放事件監(jiān)聽器的類,Symfony2框架是一個事件驅(qū)動的框架,不同的階段會觸發(fā)不同的時間,監(jiān)聽器只要監(jiān)聽相應(yīng)的事件,                                             //那么相應(yīng)事件觸發(fā)時,這些監(jiān)聽器就會被執(zhí)行。如果剛接觸不是很懂,可以不用太糾結(jié),往后深入會接觸到。│ ├── Form                                 //該目錄存放著表單類。│ ├── Resources                            //該目錄存放著Bundle的配置文件、模板文件等        ├── config            ├── routing.yml                  //該文件存放著Bundle的路由配置            └── services.xml                 //該文件存放著Bundle的services配置        ├── public        └── views                            //該文件夾存放著Bundle的所有模板文件│ ├── Tests│ └── Twig  


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 苏尼特右旗| 华安县| 屏东县| 伊川县| 青阳县| 大港区| 巴塘县| 延吉市| 淄博市| 伊金霍洛旗| 泸水县| 荔波县| 资源县| 永吉县| 鲜城| 灵璧县| 哈密市| 章丘市| 崇文区| 磴口县| 辽宁省| 安徽省| 呼图壁县| 大丰市| 广平县| 延吉市| 洛川县| 恩平市| 犍为县| 白沙| 千阳县| 文化| 洛浦县| 亳州市| 长顺县| 洛隆县| 自贡市| 依兰县| 湛江市| 济宁市| 怀来县|