這篇文章主要介紹了CodeIgniter中使用Smarty3基本配置,本文給出了創建類庫的方法和控制器中調用實例,這樣就可以完整的使用Smarty了,需要的朋友可以參考下
一、創建Smarty類庫
1.將smarty的libs文件復制到libraries下(這里我重命名為smarty)
2.新建Cismarty.php文件。(符合文件規范,文件名的首字母和class名的首字母大寫,但是控制器引用加載時,類名/文件名不需要大寫)
Cismarty.php
- <?php
- if (!defined('BASEPATH')) exit('No direct script access allowed');
- require(APPPATH . 'libraries/smarty/Smarty.class.php');
- //CI,文件系統全用相對路徑相對index.php所在的路徑,url全部用絕對路徑。
- //BASEPATH - The full server path to the "system" folder
- //APPPATH - The full server path to the "application" folder
- class Cismarty extends Smarty
- {
- public function __construct()
- {
- parent::__construct();
- $this->caching = false;
- $this->setTemplateDir(APPPATH . 'views/Smarty/templates'); //設定所有模板文件都需要放置的目錄地址。
- $this->setConfigDir(APPPATH . 'views/Smarty/configs'); //設定用于存放模板特殊配置文件的目錄,
- $this->setCacheDir(APPPATH . 'views/Smarty/cache'); //在啟動緩存特性的情況下,這個屬性所指定的目錄中放置Smarty緩存的所有模板
- $this->setPluginsDir(APPPATH . 'views/Smarty/plugins'); //插件目錄
- $this->setCompileDir(APPPATH . 'views/Smarty/templates_c'); //設定Smarty編譯過的所有模板文件的存放目錄地址
- }
- }
- ?>
在對應目錄新建smarty的文件夾。templates,configs,cache,plugins,templates_c.
二、控制器文件
建立控制器文件paper.php(類名的首字母大寫)(使用load加載libraries時默認執行構造器函數,使用url路由訪問控制器時執行構造器函數和默認的index方法。)
paper.php:
- <?php
- class Paper extends CI_Controller
- {
- function __construct()
- {
- parent::__construct();
- }
- public function pri_body()
- {
- $this->load->library('cismarty');
- $this->cismarty->assign("name", 1200);
- $this->cismarty->display('dd.tpl');
- }
- }
- ?>
也可以在application/config/autoload.php中配置自動加載資源。
新聞熱點
疑難解答