CI框架整合smarty步骤详解


Posted in PHP onMay 19, 2016

本文详细讲述了CI框架整合smarty步骤。分享给大家供大家参考,具体如下:

Ci结合smarty的配置步骤:

1. 第一步配置ci和下载smarty的模板个人喜欢用(Smarty-3.1.8)这个版本。

2. 第二部把下载到的smarty版本解压然后把里面的libs文件改名为smarty然后把这个文件拷到ci\application\libraries目录下面

3. 在ci\application\libraries这个目录下面建立一个文件,文件名可以自定义,例如见一个tp.php的文档。

4. 用编译器打开tp.php然后写入以下代码:

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
require_once('smarty/smarty.class.php');
class Tp extends Smarty{
 function tp(){
  parent::Smarty();
  $this->template_dir = APPPATH.'views';
  $this->compile_dir = APPPATH.'templates_c/';
  $this->left_delimiter = '<{';
  $this->right_delimiter = '}>';
 }
}

5. 在建立一个ci\application\templates_c文件夹

6. 打开ci\application\config\autoload.php文件把

$autoload['libraries'] = array();

改成:

$autoload['libraries'] = array('database','tp');

OK我们的配置到这里就已经成功了,接下来我们开始测试

测试的第一步先建立一个控制器:

1. 在\application\controllers下建立一个文件名为ceshi.php的文件,文件内容

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends CI_Controller {
  function __construct()
  {
   parent::__construct();
   $this->load->helper('url');
   $this->tp->assign('base_url', base_url());
   //定义css以及js的路径
  }
  function index()
  {
   $this->tp->assign("title","恭喜你smarty安装成功!");
   $this->tp->assign("body","欢迎使用smarty模板引擎");
   $arr = array(1=>'zhang',2=>'xing',3=>'wang');
   $this->tp->assign("myarray",$arr);
   $this->tp->display('ceshi.html');
  }
}

2.建立模板文件在ci\application\views目录下建立文件名为ceshi.html的文件,文件内容为

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <script src='<!--{$base_url}-->js/jQuery.min.js' type='text/JavaScript' ></script>
 <link href="<!--{$base_url}-->css/login.css" rel="stylesheet" type="text/css" />
 <title>smarty安装测试</title>
</head>
<body>
<h1><{$title}></h1>
<p><{$body}></p>
<ul>
  <{foreach from=$myarray item=v}>
  <li><{$v}></li>
  <{/foreach}>
</ul>
</body>
</html>

最后输入地址http://localhost/ci/application/index.php/ceshi (主意ci代表的是你自己放置ci框架中文件的根目录)运行以后你将会看到你配置smarty成功的页面,到这里ci和smarty的整合以及测试就完工了

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

PHP 相关文章推荐
基于curl数据采集之单页面并行采集函数get_htmls的使用
Apr 28 PHP
探讨如何在php168_cms中提取验证码
Jun 08 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
Jan 17 PHP
Yii框架关联查询with用法分析
Dec 02 PHP
php实现RSA加密类实例
Mar 26 PHP
CodeIgniter控制器之业务逻辑实例分析
Jan 20 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
再谈PHP中单双引号的区别详解
Jun 12 PHP
ThinkPHP框架表单验证操作方法
Jul 19 PHP
PHP长网址与短网址的实现方法
Oct 13 PHP
PHP从尾到头打印链表实例讲解
Sep 27 PHP
Laravel Eloquent ORM 多条件查询的例子
Oct 10 PHP
PHP QRCODE生成彩色二维码的方法
May 19 #PHP
PHP下载文件的函数实例代码
May 18 #PHP
PHP扩展框架之Yaf框架的安装与使用
May 18 #PHP
CI框架的安全性分析
May 18 #PHP
PHP的swoole扩展安装方法详细教程
May 18 #PHP
CI框架支持$_GET的两种实现方法
May 18 #PHP
CI框架中$this-&gt;load-&gt;library()用法分析
May 18 #PHP
You might like
Smarty+QUICKFORM小小演示
2007/02/25 PHP
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
2011/12/25 PHP
一个显示效果非常不错的PHP错误、异常处理类
2014/03/21 PHP
JavaScript入门教程(12) js对象化编程
2009/01/31 Javascript
js 手机号码合法性验证代码集合
2012/09/29 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
jQuery获取DOM节点实例分析(2种方式)
2015/12/15 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
2016/04/01 Javascript
JS中使用apply、bind实现为函数或者类传入动态个数的参数
2016/04/26 Javascript
JS中作用域和变量提升(hoisting)的深入理解
2016/10/31 Javascript
Html5+jQuery+CSS制作相册小记录
2016/12/30 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
2017/05/24 Javascript
layui.js实现的表单验证功能示例
2017/11/15 Javascript
node.js使用redis储存session的方法
2018/09/26 Javascript
Vue.js页面中有多个input搜索框如何实现防抖操作
2019/11/04 Javascript
vue之组件内监控$store中定义变量的变化详解
2019/11/08 Javascript
基于JQuery实现页面定时弹出广告
2020/05/08 jQuery
Python脚本实现12306火车票查询系统
2016/09/30 Python
利用Python命令行传递实例化对象的方法
2016/11/02 Python
Python基于tkinter模块实现的改名小工具示例
2017/07/27 Python
python的socket编程入门
2018/01/29 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
超简单使用Python换脸实例
2019/03/27 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
2019/05/07 Python
在python tkinter中Canvas实现进度条显示的方法
2019/06/14 Python
Python 旋转打印各种矩形的方法
2019/07/09 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
对python中list的五种查找方法说明
2020/07/13 Python
python opencv角点检测连线功能的实现代码
2020/11/24 Python
python 视频下载神器(you-get)的具体使用
2021/01/06 Python
董事长助理工作职责
2014/06/08 职场文书
关于诚信的活动方案
2014/08/18 职场文书
2014年接待工作总结
2014/11/26 职场文书
Python数据可视化之用Matplotlib绘制常用图形
2021/06/03 Python