CodeIgniter中使用Smarty3基本配置


Posted in PHP onJune 29, 2015

一、创建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中配置自动加载资源。

PHP 相关文章推荐
解决PHP在DOS命令行下却无法链接MySQL的技术笔记
Dec 29 PHP
javascript,php获取函数参数对象的代码
Feb 03 PHP
解析thinkphp import 文件内容变量失效的问题
Jun 20 PHP
php截取中文字符串不乱码的方法
Dec 25 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 PHP
FastCGI 进程意外退出造成500错误
Jul 26 PHP
详谈PHP编码转换问题
Jul 28 PHP
学习php设计模式 php实现合成模式(composite)
Dec 08 PHP
简单理解PHP的面向对象编程方式
May 17 PHP
详解PHP队列的实现
Mar 14 PHP
thinkphp5使html5实现动态跳转的例子
Oct 16 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
Jun 29 #PHP
Linux系统递归生成目录中文件的md5的方法
Jun 29 #PHP
基于CakePHP实现的简单博客系统实例
Jun 28 #PHP
Codeigniter的dom类用法实例
Jun 26 #PHP
PHP关联数组实现根据元素值删除元素的方法
Jun 26 #PHP
PHP实现事件机制实例分析
Jun 26 #PHP
php使用MySQL保存session会话的方法
Jun 26 #PHP
You might like
php&amp;java(二)
2006/10/09 PHP
PHP解压ZIP文件到指定文件夹的方法
2016/11/17 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
JS 表单验证大全
2011/11/23 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
jQuery判断对象是否存在的方法
2015/02/05 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
2015/07/20 Javascript
JavaScript function函数种类详解
2016/02/22 Javascript
js通过指定下标或指定元素进行删除数组的实例
2017/01/12 Javascript
JavaScript实现反转字符串的方法详解
2017/04/27 Javascript
d3.js入门教程之数据绑定详解
2017/04/28 Javascript
Webpack框架核心概念(知识点整理)
2017/12/22 Javascript
微信小程序实现文件、图片上传功能
2020/08/18 Javascript
p5.js绘制创意自画像
2019/11/04 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
[03:35]2018年度DOTA2最佳辅助位选手5号位-完美盛典
2018/12/17 DOTA
Python列表(list)、字典(dict)、字符串(string)基本操作小结
2014/11/28 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
详解Swift中属性的声明与作用
2016/06/30 Python
搭建Python的Django框架环境并建立和运行第一个App的教程
2016/07/02 Python
使用Python opencv实现视频与图片的相互转换
2019/07/08 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
pytorch 预训练层的使用方法
2019/08/20 Python
django-csrf使用和禁用方式
2020/03/13 Python
受欢迎的大学生自我评价
2013/12/05 职场文书
思想品德课教学反思
2014/02/10 职场文书
发展部经理职责规定
2014/02/22 职场文书
微信营销策划方案
2014/02/24 职场文书
就业协议书的作用
2014/04/11 职场文书
公司合作协议范文
2014/10/01 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书
默认网关不可用修复后过一会又不好使了解决方法
2022/04/08 数码科技