ThinkPhp下把前端文件獨立出來

前端獨立之前的目錄

thinkphp默認(rèn)的View模板文件都是在/Application各個模塊下的,css、js之類的資源文件是放在/Public目錄下,大致是這個樣子的:

ThinkphpSample
├─Application 項目邏輯目錄
│  ├─Common 公共模塊
│  │  ├─...
│  ├─Home  Home模塊
│  │  ├─Controller  Home控制器目錄
│  │  ├─...
│  │  ├─View  Home模塊下的視圖目錄
│  │  │  ├─Index
│  │  │  │  ├─index.html
│  │  │  │  ├─...
│  ├─Admin  Admin模塊
│  │  ├─Controller  Admin控制器目錄
│  │  ├─...
│  │  ├─View  Admin模塊下的視圖目錄
│  │  │  ├─Index
│  │  │  │  ├─index.html
│  │  │  │  ├─...
│  │  │  ├─Article
│  │  │  │  ├─index.html
│  │  │  │  ├─add.html
│  │  │  │  ├─edit.html
│  │  │  │  ├─...
│  ├─...
├─Public 資源文件目錄
│  ├─Weixin  微信前端靜態(tài)資源目錄   
│  │  ├─js  home下調(diào)用的js文件目錄
│  │  ├─css  home下調(diào)用的css文件目錄
│  │  ├─images  home下調(diào)用的圖片文件目錄 
│  ├─Admin  管理后臺靜態(tài)資源目錄   
│  │  ├─js  home下調(diào)用的js文件目錄
│  │  ├─css  home下調(diào)用的css文件目錄
│  │  ├─images  home下調(diào)用的圖片文件目錄 
│  ├─...
├─ThinkPHP 框架系統(tǒng)目錄

但在實際開發(fā)中,這樣把前端文件分散到各個模塊下是有很多弊端的:

  • 使用gulp這類前端工具很不便利;
    如果想要在src目錄下全是原始代碼,在dest目錄下全是壓縮后的html理逊、js、css等盒揉,這是難以實現(xiàn)的晋被。
前端獨立之后的目錄

把所有的模板文件和js、css等獨立出來放在根目錄下的/tpl中的刚盈;
如下:

ThinkphpSample
├─Application 項目邏輯目錄
│  ├─Common 公共模塊
│  │  ├─Common  公共函數(shù)目錄
│  │  │  ├─functioin.php 公共函數(shù)php文件
│  │  ├─Conf  公共配置文件目錄
│  │  │  ├─config.php  tp的配置 用于覆蓋框架默認(rèn)配置項
│  │  │  ├─db.php  數(shù)據(jù)庫配置 用戶名 密碼等
│  │  │  ├─webconfig.php  項目的配置羡洛;網(wǎng)站名;是否開啟網(wǎng)站等
│  │  ├─Controller  公共控制器目錄 
│  │  │  ├─BaseController.class.php 應(yīng)用最基礎(chǔ)的控制器
│  │  │  ├─HomeBaseController.class.php  Home基礎(chǔ)控制器繼承BaseController
│  │  │  ├─AdminBaseController.class.php  Admin基礎(chǔ)控制器繼承BaseController
│  │  │  ├─UserBaseController.class.php  User基礎(chǔ)控制器繼承BaseController
│  │  │  ├─...
│  │  ├─Model  公共模型目錄
│  │  │  ├─BaseModel.class.php  應(yīng)用最基礎(chǔ)的Model
│  │  │  ├─ArticleModel.class.php 文章model  繼承BaseModel
│  │  │  ├─UserModel.class.php  用戶model 繼承BaseModel
│  │  │  ├─...
│  ├─Home  Home模塊
│  │  ├─Controller  Home控制器目錄 繼承HomeBaseController
│  │  │  ├─ArticleController.class.php 文章控制器目錄  
│  │  │  ├─IndexController.class.php  首頁控制器
│  │  │  ├─ ...  
│  ├─Admin  Admin模塊
│  │  ├─Controller  Admin控制器目錄 繼承AdminBaseController
│  │  │  ├─IndexController.class.php  后臺管理首頁控制器
│  │  │  ├─ ...  
│  ├─User  User模塊
│  │  ├─Controller  User控制器目錄 繼承UserBaseController
│  │  │  ├─IndexController.class.php  用戶個人中心首頁控制器
│  │  │  ├─ ...  
├─Public 資源文件目錄
│  ├─static       靜態(tài)資源目錄
│  │  ├─js        jquery等第三方j(luò)s存放的目錄
│  │  ├─css       animate.css等第三方css目錄
│  │  ├─ ...  
│  ├─weixin       靜態(tài)資源目錄
│  │  ├─js        jquery等第三方j(luò)s存放的目錄
│  │  ├─css       animate.css等第三方css目錄
│  │  ├─ ...          
├─tpl 視圖文件生產(chǎn)目錄
│  ├─Public  公共目錄
│  │  ├─js  公共js目錄
│  │  │  ├─base.js 全站都引用的js文件
│  │  │  ├─ ...  
│  │  ├─css  公共css目錄
│  │  │  ├─base.css 全站都引用的css文件  
│  │  │  ├─ ...  
│  │  ├─images 公共圖片目錄 
│  │  ├─...  
│  ├─Home  前臺Home視圖目錄   
│  │  ├─Index  首頁文件目錄
│  │  │  ├─index.html 首頁  
│  │  │  ├─ ...
│  ├─Admin  同Home
│  ├─User   同Home
├─tpl_src  視圖文件源目錄
│  ├─Public  公共目錄
│  │  ├─js  公共js目錄
│  │  │  ├─base.js 全站都引用的js文件
│  │  │  ├─ ...  
│  │  ├─css  公共css目錄
│  │  │  ├─base.css 全站都引用的css文件  
│  │  │  ├─ ...  
│  │  ├─images 公共圖片目錄 
│  │  ├─...  
│  ├─Home  前臺Home視圖目錄   
│  │  ├─Index  首頁文件目錄
│  │  │  ├─index.html 首頁  
│  │  │  ├─ ...
│  ├─Admin  同Home
│  ├─User   同Home
├─Runtime 緩存目錄
├─ThinkPHP 框架系統(tǒng)目錄
如何做到藕漱?
  1. 在根目錄的入口文件index.php文件中定義TMPL_PATH
    新增define("TMPL_PATH","./tpl/");
<?php
// 應(yīng)用入口文件
// 檢測PHP環(huán)境
if(version_compare(PHP_VERSION,'5.3.0','<'))  die('require PHP > 5.3.0 !');
// 開啟調(diào)試模式 建議開發(fā)階段開啟 部署階段注釋或者設(shè)為false
define('APP_DEBUG',True);
// 定義應(yīng)用目錄
define('APP_PATH','./Application/');
// 定義模板文件默認(rèn)目錄
define("TMPL_PATH","./tpl/");
// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';
  1. 在/Application/Common/Conf/config.php文件中定義靜態(tài)資源目錄
<?php
return array(
    'TMPL_PARSE_STRING'=>array(
        '__PUBLIC__'=>__ROOT__.trim(TMPL_PATH,'.').'/Public/Static'
    )
);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末欲侮,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子肋联,更是在濱河造成了極大的恐慌威蕉,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件橄仍,死亡現(xiàn)場離奇詭異韧涨,居然都是意外死亡,警方通過查閱死者的電腦和手機侮繁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進(jìn)店門虑粥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人宪哩,你說我怎么就攤上這事娩贷。” “怎么了锁孟?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵彬祖,是天一觀的道長。 經(jīng)常有香客問我品抽,道長涧至,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任桑包,我火速辦了婚禮,結(jié)果婚禮上纺非,老公的妹妹穿的比我還像新娘哑了。我一直安慰自己赘方,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布弱左。 她就那樣靜靜地躺著窄陡,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拆火。 梳的紋絲不亂的頭發(fā)上跳夭,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天,我揣著相機與錄音们镜,去河邊找鬼币叹。 笑死,一個胖子當(dāng)著我的面吹牛模狭,可吹牛的內(nèi)容都是我干的颈抚。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼嚼鹉,長吁一口氣:“原來是場噩夢啊……” “哼贩汉!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起锚赤,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤匹舞,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后线脚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體赐稽,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年酒贬,在試婚紗的時候發(fā)現(xiàn)自己被綠了又憨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡锭吨,死狀恐怖蠢莺,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情零如,我是刑警寧澤躏将,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站考蕾,受9級特大地震影響祸憋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜肖卧,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一蚯窥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦拦赠、人聲如沸巍沙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽句携。三九已至,卻和暖如春允乐,著一層夾襖步出監(jiān)牢的瞬間矮嫉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工牍疏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蠢笋,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓麸澜,卻偏偏與公主長得像挺尿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子炊邦,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容