Codeigniter整合smarty

2024-06-16 15:32
文章标签 整合 smarty codeigniter

本文主要是介绍Codeigniter整合smarty,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

smarty的模板机制很强大,一般情况下CI无需整合其他模板标签,因为PHP本身就是一种标签,简单易用。codeigniter整合smarty教程(我用的都是最新版本)如下:
第一步:下载codeigniter最新版本: http://codeigniter.org.cn/downloads
第二步:下载smarty最新版本: http://www.smarty.net/download
第三步:
配置步骤:
(1)将s marty拷贝到application/libraries下,然后再根目录下下新建templates,templates_c,config,cache目录,结构如下:


codeigniter轻松整合smarty



(2)入口文件新增:define('ROOT', dirname(__FILE__));
(3)libraries下新建CI_Smarty.php

  1. <?php defined('BASEPATH') or die('Access restricted!');
  2.  
  3. require(APPPATH . 'libraries/smarty/Smarty.class.php');
  4.  
  5. class CI_Smarty extends Smarty {
  6.  
  7. public function __construct($template_dir = '', $compile_dir = '', $config_dir = '', $cache_dir = '') {
  8. parent::__construct();
  9. if (is_array($template_dir)) {
  10. foreach ($template_dir as $key => $value) {
  11. $this->$key = $value;
  12. }
  13. } else {
  14. //ROOT是Codeigniter在入口文件index.php定义的本web应用的根目录
  15. $this->template_dir = $template_dir ? $template_dir : ROOT . '/templates';
  16. $this->compile_dir = $compile_dir ? $compile_dir : ROOT . '/templates_c';
  17. $this->config_dir = $config_dir ? $config_dir : ROOT . '/config';
  18. $this->cache_dir = $cache_dir ? $cache_dir : ROOT . '/cache';
  19. }
  20. }
  21.  
  22. }

controller中使用:
  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. // by www.phpddt.com
  3. class Welcome extends CI_Controller {
  4.  
  5. public function __construct()
  6. {
  7. parent::__construct();
  8. $this->load->library('CI_Smarty');
  9. }
  10. public function test()
  11. {
  12. $this->ci_smarty->assign('test', 'smarty');
  13. $this->ci_smarty->display('test.tpl');
  14. }
  15. }
  16.  
  17. /* End of file welcome.php */
  18. /* Location: ./application/controllers/welcome.php */

这篇关于Codeigniter整合smarty的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1066829

相关文章

SpringBoot整合liteflow的详细过程

《SpringBoot整合liteflow的详细过程》:本文主要介绍SpringBoot整合liteflow的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋...  liteflow 是什么? 能做什么?总之一句话:能帮你规范写代码逻辑 ,编排并解耦业务逻辑,代码

springboot整合TDengine全过程

《springboot整合TDengine全过程》:本文主要介绍springboot整合TDengine全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境准备JDBC-JNI方式准备依赖实体类Mapper配置类测试类RESTful方式实体类配置类测试类总结

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

Springboot整合Redis主从实践

《Springboot整合Redis主从实践》:本文主要介绍Springboot整合Redis主从的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言原配置现配置测试LettuceConnectionFactory.setShareNativeConnect

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

MQTT SpringBoot整合实战教程

《MQTTSpringBoot整合实战教程》:本文主要介绍MQTTSpringBoot整合实战教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录MQTT-SpringBoot创建简单 SpringBoot 项目导入必须依赖增加MQTT相关配置编写