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短域名转换为实际域名函数
Jan 17 PHP
php基础学习之变量的使用
Jun 09 PHP
php中对2个数组相加的函数
Jun 24 PHP
PHP数据类型的总结分析
Jun 13 PHP
PHP代码优化的53个细节
Mar 03 PHP
PHP扩展开发入门教程
Feb 26 PHP
浅析PHP中Session可能会引起并发问题
Jul 23 PHP
YII CLinkPager分页类扩展增加显示共多少页
Jan 29 PHP
Zend Framework入门教程之Zend_Config组件用法详解
Dec 09 PHP
利用 fsockopen() 函数开放端口扫描器的实例
Aug 19 PHP
PHP连接sftp并下载文件的方法教程
Aug 26 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
Apr 16 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
ftp类(example.php)
2006/10/09 PHP
Yii2超好用的日期和时间组件(值得收藏)
2016/05/05 PHP
PHP实现数据库的增删查改功能及完整代码
2018/04/18 PHP
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
2010/09/14 Javascript
jquery ui dialog实现弹窗特效的思路及代码
2013/08/03 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
javascript的数组和常用函数详解
2014/05/09 Javascript
nodejs 实现模拟form表单上传文件
2014/07/14 NodeJs
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
深入探究AngularJS框架中Scope对象的超级教程
2016/01/04 Javascript
JS获取当前脚本文件的绝对路径
2016/03/02 Javascript
写jQuery插件时的注意点
2017/02/20 Javascript
node中使用es5/6以及支持性与性能对比
2017/08/11 Javascript
JS中利用swiper实现3d翻转幻灯片实例代码
2017/08/25 Javascript
详解webpack loader和plugin编写
2018/10/12 Javascript
vue elementUI 表单校验功能之数组多层嵌套
2019/06/04 Javascript
vue-video-player实现实时视频播放方式(监控设备-rtmp流)
2020/08/10 Javascript
python写的一个文本编辑器
2014/01/23 Python
Python中lambda的用法及其与def的区别解析
2014/07/28 Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
2015/05/20 Python
详解Django中Request对象的相关用法
2015/07/17 Python
python基础教程之Filter使用方法
2017/01/17 Python
基于Python的XSS测试工具XSStrike使用方法
2017/07/29 Python
python 读写文件,按行修改文件的方法
2018/07/12 Python
python2与python3中关于对NaN类型数据的判断和转换方法
2018/10/30 Python
Python中的 is 和 == 以及字符串驻留机制详解
2019/06/28 Python
Canvas引入跨域的图片导致toDataURL()报错的问题的解决
2018/09/19 HTML / CSS
英国家电购物网站:Sonic Direct
2019/03/26 全球购物
你所知道的集合类都有哪些?主要方法?
2012/12/31 面试题
大学生四个方面的自我评价
2013/09/19 职场文书
ktv收银员岗位职责
2013/12/16 职场文书
小学教师听课制度
2014/02/01 职场文书
中学综治宣传月活动总结
2015/05/07 职场文书
环境保护宣传标语大全!
2019/06/28 职场文书
Python socket如何解析HTTP请求内容
2022/02/12 Python
使用CSS实现音波加载效果
2023/05/07 HTML / CSS