1. 程式人生 > >thinkphp 共用html檔案 標頭檔案 extend的使用

thinkphp 共用html檔案 標頭檔案 extend的使用

通常在開發後臺過程中,我們需要使用一個公共的頭部檔案,一般頭部內容包含使用者名稱,退出,欄目名稱,公司,公共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可根據需要,重新賦值變化。
如需幫助請留言!