ThinkPHP項目分組配置方法分析
本文實例講述了ThinkPHP項目分組配置方法。分享給大家供大家參考,具體如下:
項目分組概述
項目分組是 ThinkPHP 一個重要機(jī)制,項目分組功能可以把以往的多項目合并到一個項目中去,對于公共的文件可以重用,但每個分組又可以有自己獨(dú)立的配置文件、公共文件、語言包等。
以一個普通的網(wǎng)站為例,如果不采用項目分組,那么通常是將網(wǎng)站前臺(提供給用戶瀏覽部分)作為一個項目。而網(wǎng)站的后臺管理部分,可能有獨(dú)立的配置文件,CSS文件及模板等,因此作為另一個項目來管理。但實際上這兩個項目都是網(wǎng)站的內(nèi)容,他們之間可以共享一些內(nèi)容如數(shù)據(jù)庫配置文件甚至一些模型類和跨項目操作等。
項目分組就很好的解決了同一個系統(tǒng)下各項目之間的共性與個性問題。
項目分組配置
在系統(tǒng)配置文件(Config/config.php)里面進(jìn)行簡單的項目分組配置即可開啟項目分組。
與項目分組模式有關(guān)的配置有五個:
配置選項 | 說明 | 例子或建議 |
---|---|---|
APP_GROUP_LIST | 項目分組所有名稱列表,若不設(shè)置則表示不啟用項目分組模式 | 'APP_GROUP_LIST'=>'Home,Admin,User,Blog', |
DEFAULT_GROUP | 默認(rèn)的項目分組名稱,系統(tǒng)默認(rèn)是 Home | 'DEFAULT_GROUP' =>'Home', |
APP_GROUP_DEPR | 項目分組之間的分割符,默認(rèn)是 . (點(diǎn)),用于 A函數(shù) D函數(shù) 和 路由配置中的分隔 | 建議默認(rèn) |
TMPL_FILE_DEPR | 模板文件中模塊與操作之間的分割符,默認(rèn)是 / ,只對項目分組部署有效 | 建議默認(rèn),可使用 U 方法自動生成 URL |
VAR_GROUP | 獲取項目分組名稱的變量,默認(rèn)是 g | index.php?g=Admin&m=Index&a=edit,建議默認(rèn) |
當(dāng) TMPL_FILE_DEPR 配置為 _ 時,以 Admin 分組 Index 模塊 add 操作來說,其對應(yīng)的模板文件由原來的:
Tpl/default/Admin/Index/add.html
變更為:
Tpl/default/Admin/Index_add.html
通過這個配置,使模板目錄結(jié)構(gòu)減少了一層目錄。
提示:TMPL_FILE_DEPR 同時也是語言文件中分組語言定義與語言文件之間的分隔符。
以上配置選項中,要啟用分組,APP_GROUP_LIST 必須設(shè)置,其他選項則根據(jù)實際情況加以配置。
項目分組個性配置
如果要為分組的項目添加獨(dú)自的個性化配置,可以在配置目錄 Conf 下,建立與項目組名稱相同的目錄(目錄命名格式是:分組名稱的首字母大寫+其余字母小寫的形式),并在目錄內(nèi)定義一個 config.php 配置文件。如 Admin 項目的個性配置文件:
Conf/Admin/config.php
當(dāng)分組名稱的目錄下有定義 config.php 文件時,每次訪問該分組,系統(tǒng)會自動加載分組的獨(dú)立配置并覆蓋公共配置中相同選項的設(shè)定。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《ThinkPHP常用方法總結(jié)》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
- thinkPHP5.0框架獨(dú)立配置與動態(tài)配置方法
- thinkPHP5.0框架簡單配置作用域的方法
- thinkPHP5.0框架環(huán)境變量配置方法
- nginx下配置thinkphp文件的方法
- thinkphp配置文件路徑的實現(xiàn)方法
- ThinkPHP的常用配置選項匯總
- Nginx配置支持ThinkPHP的PATH_INFO
- Nginx下支持Thinkphp URL Rewrite的配置示例
- THINKPHP支持YAML配置文件的設(shè)置方法
- ThinkPHP5實現(xiàn)作業(yè)管理系統(tǒng)中處理學(xué)生未交作業(yè)與已交作業(yè)信息的方法
- thinkPHP5.0框架配置格式、加載解析與讀取方法
相關(guān)文章
Laravel 5框架學(xué)習(xí)之Blade 簡介
本文給大家?guī)淼氖荓aravel5框架學(xué)習(xí)系列文章的第4篇,主要向大家簡單介紹下Blade,為什么要介紹它呢,因為laravel的模版引擎采用了blade模版引擎,so....2015-04-04laravel orm 關(guān)聯(lián)條件查詢代碼
今天小編就為大家分享一篇laravel orm 關(guān)聯(lián)條件查詢代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10Zend Framework實現(xiàn)Zend_View集成Smarty模板系統(tǒng)的方法
這篇文章主要介紹了Zend Framework實現(xiàn)Zend_View集成Smarty模板系統(tǒng)的方法,詳細(xì)分析了視圖組件Zend_View使用接口Zend_View_Interface繼承Smarty的原理與實現(xiàn)技巧,需要的朋友可以參考下2016-03-03ThinkPHP中類的構(gòu)造函數(shù)_construct()與_initialize()的區(qū)別詳解
這篇文章主要介紹了ThinkPHP中類的構(gòu)造函數(shù)_construct()與_initialize()的區(qū)別,文中介紹的非常詳細(xì),相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-03-03Laravel中ServiceProvider使用場景示例詳解
這篇文章主要為大家介紹了Laravel中ServiceProvider使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06