thinkphp 共用html檔案 標頭檔案 extend的使用
阿新 • • 發佈:2018-12-27
通常在開發後臺過程中,我們需要使用一個公共的頭部檔案,一般頭部內容包含使用者名稱,退出,欄目名稱,公司,公共CSS,JS等資訊。不可能每個靜態檔案都去重新複製一遍程式碼,那如何讓其他靜態頁面繼承公共檔案呢?
第一步:在View檔案裡新建Public檔案 建立base.html
base.html程式碼
注意title和company
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{$title}</title> </head> <body> <div id="top_bar"> <div> <div ><a href="#">標題:{$title}</a></div> <div > <span>你好:{$company}</span><a href="{:U('Public/logout')}" >退出</a> </div> </div> </div> <block name="main">主內容</block> </body> </html>
第二步:引入base檔案的靜態頁面
例如在Index/index中引入,加入如下程式碼
<extend name="Public/base"/>
第三步:新建BaseController檔案,用於控制器繼承
namespace Admin\Controller; use Think\Controller; class BaseController extends Controller { public $title; public function _initialize() { $company="電風扇123科技";//BASE檔案{$company}使用,賦值公司名稱 $this->assign("company",$company); } }
第四步:indexController 繼承 BaseController
namespace Admin\Controller;
use Think\Controller;
class IndexController extends BaseController {
public function index(){
$title='充值中心';
$this->assign("title",$title);
$this->display();
}
}
最後不管哪個控制器繼承base,靜態頁面公司名稱都無需重新賦值。title可根據需要,重新賦值變化。
如需幫助請留言!