php ci2.2与smarty3.1.20整合
1.下载ci框架与smarty,在此不再赘述
2.将CodeIgniter-2.2-stable.zip解压放到php根目录下
3.解压Smarty-3.1.20.zip,将lib文件夹copy到ci的application\libraries目录下
并新建Ci_smarty.php文件
<?php /** * smarty文件加载类 * */ if(!defined('BASEPATH')) exit('No direct script access allowed'); require(APPPATH.'libraries/libs/Smarty.class.php'); class Ci_smarty extends Smarty { protected $ci; public function __construct() { parent::__construct(); $this->ci = & get_instance(); $this->ci->load->config('smarty');//加载smarty的配置文件 //获取相关的配置项 $this->cache_lifetime = $this->ci->config->item('cache_lifetime'); $this->caching = $this->ci->config->item('caching'); $this->template_dir = $this->ci->config->item('template_dir'); $this->compile_dir = $this->ci->config->item('compile_dir'); $this->cache_dir = $this->ci->config->item('cache_dir'); $this->use_sub_dirs = $this->ci->config->item('use_sub_dirs'); $this->left_delimiter = $this->ci->config->item('left_delimiter'); $this->right_delimiter = $this->ci->config->item('right_delimiter'); } } ?>
4.在ci的application\config目录下
新建smarty.php文件
<?php if(!defined('BASEPATH')) exit('No direct script access allowed'); $config['cache_lifetime'] = 30*24*3600; $config['caching'] = false; $config['template_dir'] = APPPATH .'views'; $config['compile_dir'] = APPPATH .'views/template_c'; $config['cache_dir'] = APPPATH . 'views/cache'; $config['use_sub_dirs'] = false; //子目录变量(是否在缓存文件夹中生成子目录) $config['left_delimiter'] = '<{'; $config['right_delimiter'] = '}>'; ?>
5.在application/core下新建MY_Controller.php
<?php if (!defined('BASEPATH')) exit('No direct access allowed.'); class MY_Controller extends CI_Controller{ public function __construct(){ parent::__construct(); } public function assign($key,$val){ $this->ci_smarty->assign($key,$val); } public function display($html){ $this->ci_smarty->display($html); } } ?>
6.在application/config/autoload.php文 件添加找到$autoload['libraries']array();添加Ci_smarty如下:
$autoload['libraries'] = array('Ci_smarty');
至此配置完毕,实现了,ci与smarty的无缝整合
7.测试
修改application/controllers/welcome.php如下:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Welcome extends MY_Controller { public function index() { $test='ci 2.2 + smarty 3.1.20 配置成功'; $this->assign('test',$test); $this->display('test.html'); } } ?>在applicaction/views下新建test.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>smarty配置测试</title> </head> <body> <{$test}> </body> </html>
相关推荐
以下是一些Smarty 3.1.27的关键知识点: 1. **模板引擎**:Smarty作为一个模板引擎,它提供了一种方式将PHP代码与HTML分离,使得HTML模板可以独立于PHP代码进行修改,减少了开发者和设计师之间的沟通成本。 2. **...
在Smarty-3.1.29这个版本中,可能包含了一些bug修复、性能优化和新功能的添加,但具体更新内容需要查看该版本的官方发布说明。使用这个版本,开发者可以获得更稳定、更高效的模板处理体验。为了确保最佳性能和兼容性...
Smarty 3.1.29 是一款广泛应用的PHP模板引擎,它的主要目标是实现应用程序的视图层与逻辑代码的分离,从而提高开发效率和代码的可维护性。这款模板系统设计精巧,允许开发者使用一种简洁、清晰的标记语言来编写模板...
Smarty 3.1.34 版本是该软件的一个特定发行版,它包含了优化的性能、增强的安全性以及一系列的修复和改进。 在Smarty中,模板是HTML文件,而PHP代码则负责处理业务逻辑和数据。模板引擎允许开发者使用特殊的语法,...
Smarty 3.1.24是该软件的一个特定版本,发布于某个时间点,旨在提供稳定性和性能的改进。 在Smarty 3.1.24中,我们可以探讨以下几个关键知识点: 1. **模板引擎**:Smarty是一种模板引擎,它允许开发者创建可复用...
Smarty-3.1.21是该模板引擎的一个特定版本,它在前一版本的基础上进行了一系列的优化和更新,以提供更好的性能和稳定性。 Smarty的核心理念在于“智能模板”,它允许开发人员使用类似于HTML的语法来编写模板,同时...
在本文中,我们将深入探讨Smarty 3.1.21的相关知识点,包括其功能、设计哲学、安装与配置,以及如何在实际项目中有效地利用它。 Smarty是一个强大的模板引擎,它的主要目的是将网页设计与后端编程逻辑分离。通过...
这个压缩包包含的是Smarty 3.1.48的源码,适合用于软件开发、网站构建,尤其是对于那些需要高效处理动态内容和进行毕业设计论文的计算机科学学生或从业者。 Smarty的主要特性包括: 1. **模板和PHP分离**:Smarty...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
Smarty PHP模板引擎是一个使用PHP写出来的模板引擎,分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。使PHP程序员同前端人员分离,使程序员改变程序...
APACHE2.2+MYSQL5.1+PHP5.3+LINUX+SMARTY2.6+JQUERY1.4+CSS3.0常用手册结合。 最近在linux上开发,把所有之前在windows有很多chm手册整理一下。包含了常用的php开发技术包含前端和后端的,和linux教程。希望能够为你...
SpeedPHP 3.1.66是SpeedPHP 3.0正式版的增强版本,对SAE(新浪云计算平台)、新的Smarty 3等有着良好的支持。并增强和改进了多项功能。 SpeedPHP框架系统 v3.1.89 更新: 升级Smarty 3,更稳定 修正了URLREWRITE...
为您提供Smarty下载,Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离...
"smarty-3.1.32"可能是Smarty库的压缩文件,解压后可以得到完整的Smarty v3.1.32源码。 总的来说,Smarty v3.1.32为PHP开发者提供了一个强大且灵活的模板解决方案,通过它的模板引擎,可以更高效地开发Web应用,并...
Smarty简介 Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。简单的...
Smarty v3.1.21是该引擎的一个特定版本,提供了一些改进和修复,旨在提升性能和用户体验。在基于PHP的项目开发中,使用Smarty能够使程序员和设计师更好地协作,因为设计师可以专注于HTML模板的设计,而程序员则可以...
Smarty v3.1.33是该引擎的一个特定版本,包含了一些改进和修复。 Smarty的核心理念在于“智能模板”,它允许开发人员定义变量并将其传递给模板,然后在模板文件中通过简单的语法来显示这些变量。这使得非程序员(如...
Smarty 3.1.35 更新日志:2020-04-14在评论之后删除空格;在arrayiterators上修复foreachelse;修复git导出存档中包含的文件,用于软件包维护人员;为可缓存插件设置缓存属性时抛出SmartyException;修复了用null...
配套工具Smarty-3.1.4.7z”揭示了本教程的焦点是关于计算机后端开发,特别关注PHP编程语言,并且提供了一款名为Smarty的配套工具的3.1.4版本。Smarty是一个流行的PHP模板引擎,用于将业务逻辑与视图设计分离,提升...