using smarty with codeigniter

2019-05-31 16:32发布

问题:

I wants to use codeigniter and smarty together.i.e. I wants to use html files instead of .tpl.php files of codeigniter as of smarty. Is this possible or how can I do this.I have searched a lot and find some examples but none of some works as required by me.

回答1:

You should create a library Smarty_tpl.php:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
//smarty class
require BASEPATH . "../../smarty/libs/Smarty.class.php";

class Smarty_tpl extends Smarty {

function __construct(){
    parent::__construct();

    $smarty_dir = BASEPATH . "../../smarty/libs/";

    $this->setTemplateDir(APPPATH."views/templates");
    $this->setCompileDir(APPPATH."views/templates_c");
    $this->setCacheDir(APPPATH."views/cache");
    $this->setConfigDir(APPPATH."views/config");
    $this->setPluginsDir(array("$smarty_dir/plugins","$smarty_dir/sysplugins/"));
    $this->compile_check=   true;
    $this->force_compile=   true;
    $this->caching=         true;
    $this->cache_lifetime=  86400;
}
}

And its using:

$this->load->library("Smarty_tpl");
$this->smarty_tpl->display("...");


回答2:

There is built in templating library in codeigniter so why bother using smarty?