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 相关文章推荐
web方式ftp
Oct 09 PHP
php中利用post传递字符串重定向的实现代码
Apr 21 PHP
php实现utf-8和GB2312编码相互转换函数代码
Feb 07 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
Jan 14 PHP
你可能不知道PHP get_meta_tags()函数
May 12 PHP
php缓冲输出实例分析
Jan 05 PHP
php设计模式之单例模式实例分析
Feb 25 PHP
php文件下载处理方法分析
Apr 22 PHP
php中file_exists函数使用详解
May 08 PHP
thinkphp制作404跳转页的简单实现方法
Sep 22 PHP
php源码的安装方法和实例
Sep 26 PHP
在Laravel中实现使用AJAX动态刷新部分页面
Oct 15 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
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
教你识别简单的免查杀PHP后门
2015/09/13 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
php从数据库中获取数据用ajax传送到前台的方法
2018/08/20 PHP
Auntion-TableSort国人写的一个javascript表格排序的东西
2007/11/12 Javascript
js 浏览器事件介绍
2012/03/30 Javascript
js里怎么取select标签里的值并修改
2012/12/10 Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
2013/03/25 Javascript
jquery图片放大功能简单实现
2013/08/01 Javascript
验证控件与Button的OnClientClick事件详细解析
2013/12/04 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
jQuery中live()方法用法实例
2015/01/19 Javascript
JS动态改变表格边框宽度的方法
2015/03/31 Javascript
学习vue.js条件渲染
2016/12/03 Javascript
基于JS实现9种不同的面包屑和分布式多步骤导航效果
2017/02/21 Javascript
详谈js的变量提升以及使用方法
2018/10/06 Javascript
小程序实现分类页
2019/07/12 Javascript
vue实现图片预览组件封装与使用
2019/07/13 Javascript
使用js实现一个简单的滚动条过程解析
2019/09/10 Javascript
Vue通过for循环随机生成不同的颜色或随机数的实例
2019/11/09 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
2020/11/06 Javascript
[01:03:38]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS CIS
2014/05/22 DOTA
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
Python Json序列化与反序列化的示例
2018/01/31 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
Python 中的range(),以及列表切片方法
2018/07/02 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
python3的pip路径在哪
2020/06/23 Python
马来西亚户外装备商店:PTT Outdoor
2019/07/13 全球购物
eBay美国官网:eBay.com
2020/10/24 全球购物
什么是方法的重载
2013/06/24 面试题
OpenCV-Python模板匹配人眼的实例
2021/06/08 Python
三种方式清除vue路由跳转router-link的历史记录
2022/04/10 Vue.js