本文實(shí)例講述了ThinkPHP項(xiàng)目分組配置方法。分享給大家供大家參考,具體如下:
項(xiàng)目分組概述
項(xiàng)目分組是 ThinkPHP 一個(gè)重要機(jī)制,項(xiàng)目分組功能可以把以往的多項(xiàng)目合并到一個(gè)項(xiàng)目中去,對(duì)于公共的文件可以重用,但每個(gè)分組又可以有自己獨(dú)立的配置文件、公共文件、語言包等。
以一個(gè)普通的網(wǎng)站為例,如果不采用項(xiàng)目分組,那么通常是將網(wǎng)站前臺(tái)(提供給用戶瀏覽部分)作為一個(gè)項(xiàng)目。而網(wǎng)站的后臺(tái)管理部分,可能有獨(dú)立的配置文件,CSS文件及模板等,因此作為另一個(gè)項(xiàng)目來管理。但實(shí)際上這兩個(gè)項(xiàng)目都是網(wǎng)站的內(nèi)容,他們之間可以共享一些內(nèi)容如數(shù)據(jù)庫配置文件甚至一些模型類和跨項(xiàng)目操作等。
項(xiàng)目分組就很好的解決了同一個(gè)系統(tǒng)下各項(xiàng)目之間的共性與個(gè)性問題。
項(xiàng)目分組配置
在系統(tǒng)配置文件(Config/config.php)里面進(jìn)行簡單的項(xiàng)目分組配置即可開啟項(xiàng)目分組。
與項(xiàng)目分組模式有關(guān)的配置有五個(gè):
| 配置選項(xiàng) | 說明 | 例子或建議 |
|---|---|---|
| APP_GROUP_LIST | 項(xiàng)目分組所有名稱列表,若不設(shè)置則表示不啟用項(xiàng)目分組模式 | 'APP_GROUP_LIST'=>'Home,Admin,User,Blog', |
| DEFAULT_GROUP | 默認(rèn)的項(xiàng)目分組名稱,系統(tǒng)默認(rèn)是 Home | 'DEFAULT_GROUP' =>'Home', |
| APP_GROUP_DEPR | 項(xiàng)目分組之間的分割符,默認(rèn)是 . (點(diǎn)),用于 A函數(shù) D函數(shù) 和 路由配置中的分隔 | 建議默認(rèn) |
| TMPL_FILE_DEPR | 模板文件中模塊與操作之間的分割符,默認(rèn)是 / ,只對(duì)項(xiàng)目分組部署有效 | 建議默認(rèn),可使用 U 方法自動(dòng)生成 URL |
| VAR_GROUP | 獲取項(xiàng)目分組名稱的變量,默認(rèn)是 g | index.php?g=Admin&m=Index&a=edit,建議默認(rèn) |
當(dāng) TMPL_FILE_DEPR 配置為 _ 時(shí),以 Admin 分組 Index 模塊 add 操作來說,其對(duì)應(yīng)的模板文件由原來的:
Tpl/default/Admin/Index/add.html
變更為:
Tpl/default/Admin/Index_add.html
通過這個(gè)配置,使模板目錄結(jié)構(gòu)減少了一層目錄。
提示:TMPL_FILE_DEPR 同時(shí)也是語言文件中分組語言定義與語言文件之間的分隔符。
以上配置選項(xiàng)中,要啟用分組,APP_GROUP_LIST 必須設(shè)置,其他選項(xiàng)則根據(jù)實(shí)際情況加以配置。
項(xiàng)目分組個(gè)性配置
如果要為分組的項(xiàng)目添加獨(dú)自的個(gè)性化配置,可以在配置目錄 Conf 下,建立與項(xiàng)目組名稱相同的目錄(目錄命名格式是:分組名稱的首字母大寫+其余字母小寫的形式),并在目錄內(nèi)定義一個(gè) config.php 配置文件。如 Admin 項(xiàng)目的個(gè)性配置文件:
Conf/Admin/config.php
當(dāng)分組名稱的目錄下有定義 config.php 文件時(shí),每次訪問該分組,系統(tǒng)會(huì)自動(dòng)加載分組的獨(dú)立配置并覆蓋公共配置中相同選項(xiàng)的設(shè)定。















