文档章节

ci2 整合smarty3.0

martin-gao
 martin-gao
发布于 2015/12/28 22:22
字数 366
阅读 46
收藏 1

(1)下载smarty ,这儿下载的是 smarty-3.1.29

(2)解压到 application/librarys/文件夹下面,形成 application/librarys/smarty-3.1.29/

(3)在application/librarys/Cismarty.php新建 Cismarty.php文件

Cismarty.php 文件修改

<?php

if(!defined('BASEPATH')) EXIT('No direct script asscess allowed');
require_once( APPPATH . 'libraries/smarty-3.1.29/libs/Smarty.class.php' );

class Cismarty extends Smarty
{
	protected $ci;
	public function __construct()
	{
		parent::__construct();
		$this->ci =& get_instance();
		$this->ci->load->config('smarty');// 加载smarty 的配置文件
		// 获取相关的配置项
		$this->template_dir   = $this->ci->config->item('template_dir');
		$this->compile_dir    = $this->ci->config->item('compile_dir');
		$this->cache_dir      = $this->ci->config->item('cache_dir');
		$this->config_dir     = $this->ci->config->item('config_dir');
		$this->caching        = $this->ci->config->item('caching');
		$this->cache_lifetime = $this->ci->config->item('lefetime');
		$this->right_delimiter= $this->ci->config->item('right_delimiter');
		$this->left_delimiter = $this->ci->config->item('left_delimiter');
	}
}

(4)配置smarty配置项

<?php
if( !defined('BASEPATH')) exit('No direct script access allowed');
	
$config['theme']    = 'default';
$config['template_dir']    = FCPATH . 'www/temp';
$config['compile_dir']    = FCPATH . 'www/temp_c';
$config['cache_dir']    = FCPATH . 'www/cache';
$config['config_dir']    = FCPATH . 'www/configs';
$config['caching']    = false;
$config['lefttime']    = 0;
$config['left_delimiter'] = '<{';
$config['right_delimiter'] = '}>';

(5) 在index.php同级目录下,建立文件夹

www

www/temp

www/temp_c

www/cache/

www/configs

(6)开启自由加载,application/config/autoload.php

中修改代码  $autoload['libraries'] = array('Cismarty');

(7)验证

新建

application/core/MY_Controller.php

<?php 
if (!defined('BASEPATH')) exit('No direct access allowed');

class MY_Controller extends CI_Controller
{
	public function __construct()
	{
		parent::__construct();
	}

	public function assign($key, $val)
	{
		$this->cismarty->assign($key, $val);
	}

	public function display($html)
	{
		
		$this->cismarty->display($html);
	}
}

修改application/controller.php

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends MY_Controller 
{


	public function index()
	{
		$say = 'hello world';
		$this->assign('say', $say);
		$this->display("index.html");
	}
}

新建文件www/temp/index.html

<!DOCTYPE>
<html>
<head>
<title></title>
</head>
<body>
<{$say}>
</body>
</html>

最后 >sudo chmod -R 777 www

访问localhost/index.php

输出 hello world

配置完成。

© 著作权归作者所有

共有 人打赏支持
martin-gao
粉丝 7
博文 52
码字总数 14744
作品 0
深圳
后端工程师
加载中

评论(2)

陈宋
陈宋
79
即行
即行
123
ci3.0值得升级吗

我同时下载了ci2.2和ci3.0,用ab工具测试了下 ab -c 1000 -n 1000 ci2/ci3,发现ci2 demo页每秒能响应请求480个,而ci3 demo页只能响应请求330个.性能差三分之一差不多.那么,ci3.0到底值得...

jack984
2015/04/15
1K
7
关于smarty中cache的设置

smarty有一个对象可以开启缓存 $caching: 1:当值为1的时候,默认缓存保存时间是3600秒.倘若设置了cachelifetime,则缓存保存时间依据cachelifetime设置的时间为准.比如说: <?phprequire "...

PHer
2014/06/16
0
0
ci3.0与ci2.2有什么不同

请问ci3.0与ci2.2有什么不同,同样显示demo-index.php页,为什么用ci2 ab测试每秒能响应412个请求,而ci3只能响应312个请求.

jack984
2015/04/14
136
0
o0无忧亦无怖/Codeigniter 3 HMVC

#Codeigniter 3 HMVC ##说明 Codeigniter 3 对于Codeigniter 2.X系列版本进行了一次大的变革,所以很多在2.X版本的代码到3.x版本已经不适用了。 开源代码(部分参照)CI2由Jens Segers开源的...

o0无忧亦无怖
2016/02/18
0
0
codeigniter 3 SESSION的实现(基于redis)

CI 2 SESSION的诟病 相信无数人在使用CI2的Session类库时,遇到各种的坑,各种抱怨,各种不解。在CI中国论坛能搜到大量关于Session类库的提问,说明要想用好session类库还是得下一番功夫。 ...

o0无忧亦无怖
2015/10/12
596
0

没有更多内容

加载失败,请刷新页面

加载更多

兄弟连区块链教程之以太坊源码分析交易数据分析

交易的数据结构 交易的数据结构定义在core.types.transaction.go中,结构如下: type Transaction struct {data txdata// cacheshash atomic.Valuesize atomic.Valuefrom atomic.V...

兄弟连区块链入门教程
21分钟前
1
0
Tomcat优化经验之谈

Tomcat优化经验之谈 程序员小新人学习 2018-07-23 12:09:36 由于刚做完一个tomcat,jboss,Oracle性能优化项目,想做个总结。写写项目过程中对他们优化过程的理解。 tomcat安装配置就不讲啦(...

两广总督bogang
27分钟前
2
0
Spark中foreachPartition和mapPartitions的区别

spark的运算操作有两种类型:分别是Transformation和Action,区别如下: Transformation:代表的是转化操作就是我们的计算流程,返回是RDD[T],可以是一个链式的转化,并且是延迟触发的。 Ac...

张泽立
30分钟前
2
0
git reset 和 git revert, git log 和 git reflog 比较

前言:仙儿苦设相思局,寻欢误入冷香处 故事背景: 那一晚 月黑风高之夜 李寻欢 在自诩为江湖正义的一群伪君子设计好的圈套(repository)中做了(commit)三件事:              ...

猿神出窍
40分钟前
1
0
kotlin使用spring mvc(一)

过滤器Filter,是Servlet的一种技术。可通过Filter,对请求进行拦截,比如判断用户是否登录、验证黑名单等并且可对请求进行预处理。 接下来介绍使用WebFilter配置过滤器并实现读取cookie判断...

weidedong
45分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部