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 相关文章推荐
PHP写MySQL数据 实现代码
Jun 15 PHP
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
Jun 27 PHP
PHP 登录记住密码实现思路
May 07 PHP
PHP获取当前页面完整URL的实现代码
Jun 10 PHP
获取URL文件名后缀
Oct 24 PHP
php加密解密函数authcode的用法详细解析
Oct 28 PHP
php中自定义函数dump查看数组信息类似var_dump
Jan 27 PHP
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
Jun 10 PHP
php中类和对象:静态属性、静态方法
Apr 09 PHP
Yii2数据库操作常用方法小结
May 04 PHP
thinkphp 验证码 的使用小结
May 07 PHP
PHP中Session ID的实现原理实例分析
Aug 17 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
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
ThinkPHP提交表单时默认自动转义的解决方法
2014/11/25 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
Javascript 个人笔记(没有整理,很乱)
2007/07/07 Javascript
用JS操作FRAME中的IFRAME及其内容的实现代码
2008/07/26 Javascript
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
javascript跨域刷新实现代码
2011/01/01 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
一行代码告别document.getElementById
2012/06/01 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
js+css实现增加表单可用性之提示文字
2013/06/03 Javascript
简单的ajax连接库分享(不用jquery的ajax)
2014/01/19 Javascript
javascript使用appendChild追加节点实例
2015/01/12 Javascript
理解javascript模块化
2016/03/28 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
函数式编程入门实践(一)
2019/04/20 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
vue界面发送表情的实现代码
2020/09/11 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
python查找指定具有相同内容文件的方法
2015/06/28 Python
一步步教你用Python实现2048小游戏
2017/01/19 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
python调用jenkinsAPI构建jenkins,并传递参数的示例
2020/12/09 Python
CSS3属性使网站设计增强同时不消弱可用性
2009/08/29 HTML / CSS
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
美国高级工作服品牌:Carhartt
2018/01/25 全球购物
高级运动鞋:GREATS
2019/07/19 全球购物
2014年团员学习十八大思想汇报
2014/09/13 职场文书
学校运动会广播稿范文
2014/10/02 职场文书
谢师宴答谢词
2015/01/05 职场文书
爱心捐款活动总结
2015/05/09 职场文书
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
Python Flask搭建yolov3目标检测系统详解流程
2021/11/07 Python
CentOS MySql8 远程连接实战
2022/04/19 MySQL
Go语言怎么使用变长参数函数
2022/07/15 Golang