程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> Symfoy2目錄結構說明,symfoy2目錄結構

Symfoy2目錄結構說明,symfoy2目錄結構

編輯:關於PHP編程

Symfoy2目錄結構說明,symfoy2目錄結構


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

 

Symfony2一級目錄結構:

├── app                //這目錄下包含了,配置文件(應用的配置文件會被import到這裡面的配置文件中才生效)、緩存的類、緩存的模板
├── bin
├── composer.json
├── composer.lock
├── LICENSE
├── README.md
├── src                //我們編寫的應用存放在這個目錄下(包含Controller、Model、View、路由配置文件、應用的配置文件等)
├── 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                          //調試模式下的入口文件(在調試模式下可以額外輸出應用的運行信息,包括加載時間、執行的路由、執行sql語句等)
├── apple-touch-icon.png
├── app.php                              //生產環境下的入口文件(相當於TP框架index.php作用)
├── bundles
├── config.php
├── favicon.ico
├── robots.txt

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

├── AppCache.php
├── AppKernel.php                                //入口文件裡面會初始化一個AppKernel類,AppKernel類就是在這個文件裡面,Appkernel類的主要功能是初始化整個web應用的Bundle。
                                                 //包括Symfony2框架的核心Bundle、第三方插件的Bundle、我們自己編寫的應用的Bundle,Bundle在Symfony2裡面就相當於一個具有完成
                                                 //某一功能的完整的包,而且我們要用的Bundle都必須在AppKernel類裡面注冊。
                                                 
├── autoload.php                                 //該文件負責自動加載注冊在裡面的類,通常我們不需要手動修改它

├── bootstrap.php.cache                          //Symfony2核心的類的緩存文件,Symfony2框架必須用到的核心的類都會被編寫整理到這個文件裡面。這樣做的目的是減少運行的時候打開
                                                 //文件的個數,提高運行的速度。因為不同的類都被存放在不同的文件裡面,如果沒有把這些必要的類緩存在一個文件裡面,那麼我們每次運行
                                                 //都要打開多個文件。如果把這些必要的類整理到一個文件裡面,那麼我們每次運行這些類就在同一個文件裡面了。例如:Request類、Response類、
                                                 //Container類、Kernel類等都會被緩存到這個文件裡面。所以,如果我們想在 Request類 裡面 echo '在Request裡面調試'; 這樣的語句,我們就把
                                                 //這語句編寫在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                                        //緩存目錄,按不同模式(生成模式、調試模式)緩存。主要緩存了模板文件、Container類、路由映射相關數據等
│   ├── dev
│   └── prod
├── check.php
├── config                                       //存放配置文件的目錄,config_dev.yml和config_prod.yml才是被Symfony2框架加載的配置文件。但是為了方便管理,我們會把不同模塊的配置
                                                 //編寫到不同配置文件中,要使這些配置文件生效,那麼我們還需要import它們進config_dev.yml和config_prod.yml。
                                                 
│   ├── config_dev.yml                           //調試模式的配置文件    
│   ├── config_prod.yml                          //生成模式的配置文件
│   ├── config_test.yml
│   ├── config.yml                               //通用的配置文件,只要import進相應的調試模式下的配置文件,就可以生效
│   ├── parameters.yml                             //存放配置文件使用的變量,例如:數據名、數據庫密碼、數據庫host等等
│   ├── parameters.yml.dist
│   ├── routing_dev.yml                          //調試模式下的路由配置文件,我們在src裡面編寫的路由配置文件需要import到這個文件寫才可以生效
│   ├── routing.yml                              //通用路由配置文件
│   └── security.yml                             //防火牆配置文件,這裡的防火牆是web應用防火牆,不是服務器的防火牆,裡面配置有角色權限、ACL等,這個文件需要config_*.php import進去才可以生效
├── console
├── logs                                         //Symfony2運行的日志,同理,不同模式下有不同的日志
│   ├── dev.log
│   └── prod.log
├── phpunit.xml.dist
├── Resources
│   └── views
└── SymfonyRequirements.php

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

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

 


android目錄結構都是什,詳細的說明,

src:源碼位置
gen:系統自動生成的ID索引
android4.2.2和android pr...以及libs:這裡是可能需要導入的jar或者庫
asset:存放外來資源
bin:最終程序生成的jar或者apt
res:分別是不同分辨率圖片存放處(drawable開頭的);布局文件;菜單布局文件;自定義值比如顏色啊,字符串等(values開頭)
androidManifest:android程序配置文件,比如權限管理,activity注冊等;
----還是去買本書看看吧
 

ubuntu目錄結構

/boot:這裡是放置LINUX核心與啟動相關文件的地方,目錄下的VMLIUZ-XXX就是內核。如果啟動使用的是GRUB,那麼這個目錄內還有/boot/grub子目錄。

/dev:這個目錄下是所有LINUX的外部設備,其功能類似DOS下的.sys和Win下的.vxd。在LINUX中設備和文件是用同種方法訪問的,例如:/dev/hda代表第一個物理IDE硬盤。

/etc:系統在啟動過程中需要讀取的文件都在這個目錄。如LILO參數、用戶賬戶和密碼。

/home:用戶的主目錄,比如說有個用戶叫buyu,那他的主目錄就是/home/buyu。

/lib:這個目錄裡存放著系統最基本的動態鏈接共享庫,類似於Windows下的system32目錄,幾乎所有的應用程序都需要用到這些共享庫。

/lost+found:存放因非法關機而丟失的文件,類似於windows下的.chk文件。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved