CI框架整合smarty步骤详解
作者:yanhui_wei 发布时间:2023-11-14 11:18:11
标签:CI框架,smarty
本文详细讲述了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程序设计有所帮助。
0
投稿
猜你喜欢
- 刚刚换用windows7 64位旗舰版,使用其自带的iis7作为调试工具,今天调试一个ASP+ACCESS的网站的时候遇到了“ADODB.C
- 本文详细描述使用Django 的ORM框架操作PostgreSQL数据库删除不生效问题的定位过程及解决方案,并总结使用ORM框架操作数据库不
- 本文实例讲述了GO语言实现列出目录和遍历目录的方法。分享给大家供大家参考。具体如下:GO语言获取目录列表用 ioutil.ReadDir()
- 这篇文章主要介绍了Vue子组件内的props对象里的default参数是如何定义Array、Object、或Function默认值的正确写法
- 使用Django框架搭建后端服务器,后台接收前端传递过来xlsx的文件,直接将前端传递的文件转化为DataFrame或直接将文件保存。url
- 数据库导入导出时总失败,错误信息如下: 正在验证 (错误) 消息 错误 0xc0202049: 数据流任务 1: 无法在只读列“ID”中插入
- 在使用SQL Server存储过程或者触发器时,通常会使用自定义异常来处理一些特殊逻辑。例如游标的销毁,事务的回滚。接下来将会详细的介绍SQ
- <% a="福建是中国的一个省|我们美丽中国的武夷山!" b="中国,我们,武夷山,福建,美国,苹果&q
- 为什么使用事务 当对多个表进行更新的时候,某条执行失败。为了保持数据的完整性,需要使用事务回滚。 显示设置事务 代码如下:beg
- 总结了5个关于css布局的常见问题,并附有解决方法,供参考。float的3像素问题及解决办法当使用float浮动容器后,在IE6下会产生3p
- 之前写一个 Demo里面 有些东西要使用d3实现一些效果 但是在很多论坛找资源都找不到可以在Vue里面使用D3.js的方法,npm 上面的D
- 很多小伙伴对于slice参数的概念理解停留在概念上,切片的参数有三个,分别是step 、start 、stop 。因为参数的值也是多变的,所
- sys模块sys.argv: 实现从程序外部向程序传递参数。位置参数argv[0]代表py文件本身,运行方法 python xx.py 参数
- 一,开窗函数的语法开窗函数的语法为:over(partition by 列名1 order by 列名2 ),括号中的两个关键词partit
- 这里以安装简单的nonebot库为例子欧克,简明扼要,拿走点赞哟:大家想要的豆瓣源如下:因为有几个,但在这里还是建议使用国内的豆瓣源,本人感
- 我在使用conda安装虚拟环境的过程中,下载一些包,比如torch等,发现在虚拟环境中有一份以外,pkgs文件夹下同样也会出现一份,大小一样
- HTTPX是Python3的功能齐全的HTTP客户端,它提供同步和异步API,并支持HTTP/1.1和HTTP/2安装pip install
- 这篇文章主要介绍了Django rstful登陆认证并检查session是否过期代码实例,下面我们可以来一起学习一下。一:restful用户
- 在Matplotlib实际使用中会有生成不同大小subplots的需求。import numpy as np import matplotl
- 简介Puppeteer是Google开发并开源的一款工具,可用代码驱动浏览器操作。由于诸多优秀的特性,Puppeteer常被用在爬虫与自动化