首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

InitPHP 框架實戰:模板引擎 View 完整使用指南

     編輯:PHP 相關知識

一、模板基礎配置

配置文件位於 conf/comm.conf.php,核心參數如下:

$InitPHP_conf['template']['template_path']   = 'web/template';      // 模板目錄
$InitPHP_conf['template']['template_c_path'] = 'data/template_c';   // 編譯緩存目錄(需 777 權限)
$InitPHP_conf['template']['template_type']   = 'htm';               // 模板後綴
$InitPHP_conf['template']['template_c_type'] = 'tpl.php';           // 編譯後綴
$InitPHP_conf['template']['template_tag_left']  = '<!--{';        // 左標籤
$InitPHP_conf['template']['template_tag_right'] = '}-->';          // 右標籤
$InitPHP_conf['template']['is_compile']      = true;                // 開發開啟,上線關閉
$InitPHP_conf['template']['driver']          = 'simple';            // 驅動:simple / default
$InitPHP_conf['template']['theme']           = '';                  // 主題名稱

關鍵提示:is_compile 開發時開啟(實時編譯),生產環境關閉以提升性能;driver 決定模板語法風格。

二、目錄結構與首個模板

  1. 創建 web/template/ 存放 .htm 模板。
  2. 創建 app/data/template_c/ 並授予寫入權限。
  3. 新建 hello.htm:<h1>Hello, <!--{$name}--></h1>
  4. 控制器調用:$this->view->display('hello');(無需後綴)。

訪問後 template_c/ 下生成 hello.tpl.php,驗證編譯機制正常。

三、View API 速查(僅 5 個方法)

$this->view->set_tpl('test');           // 添加模板 test.htm
$this->view->set_tpl('user/userinfo');  // 支持子目錄
$this->view->set_tpl('header', 'F');    // 'F' 置頂顯示
$this->view->set_tpl('footer', 'L');    // 'L' 置底顯示
$this->view->remove_tpl('test');        // 移除已設置模板
$this->view->get_tpl();                 // 獲取當前模板列表
$this->view->display();                 // 輸出渲染

四、兩大模板語法對比

1. default 驅動(原生 PHP)

<!--{echo $uid;}-->
<!--{if (true == true) { }-->
<!--{}}-->
<!--{layout:user}-->

2. simple 驅動(類 Smarty 風格,推薦)

<!--{$username}-->                 // 輸出變量
<!--{APP_PATH}-->                  // 輸出常量
<!--{if ($a == 'yes')}-->...<!--{/if}-->
<!--{foreach ($a as $k => $v)}-->...<!--{/foreach}-->
<!--{for ($i=0; $i<100; $i++)}-->...<!--{/for}-->
<!--{layout:user}-->               // 佈局引入

五、進階功能

1. 自定義標籤驅動

  • 放置於 initphp/core/view/driver/,命名 {driver}.init.php,類名 {driver}Init。
  • 必須實現 public function init($str, $left, $right),通過正則替換標籤。
  • 配置 $InitPHP_conf['template']['driver'] = 'your_driver'; 啟用。

2. Layout 佈局

在模板中寫 <!--{layout:version}--> 即可引入 version.htm,支持子目錄 user/version。解決頁面公共區塊復用。

3. 多主題支持

設置 $InitPHP_conf['template']['theme'] = 'red';,模板自動從 template/red/ 讀取,實現無縫切換皮膚。

4. 編譯機制

模板編譯為 PHP 文件存放於 template_c/。開發階段 is_compile=true 保證即時生效;上線後設為 false 避免重複編譯開銷。

總結

InitPHP 模板引擎輕量易用,Simple 驅動語法清晰,配合 Layout、Theme、自定義標籤等特性,能滿足中小型項目的視圖層需求。合理配置編譯緩存是性能優化關鍵。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved