用户
 找回密码
 入住 CI 中国社区
搜索
查看: 8755|回复: 11
收起左侧

[库 Library] CodeIgniter2.0.1和smarty3.0.7无缝整合,新手必修技打包下载

  [复制链接]
发表于 2011-3-30 10:39:41 | 显示全部楼层 |阅读模式
CodeIgniter2.0.1和smarty3.0.7无缝整合都是全新版本 和 以往的插件方法不同是很好的无缝整合

解释:application\libraries\Smarty.php

PHP复制代码
 
 
<?php  if (!defined('BASEPATH')) exit('No direct script access allowed');
 
require_once( BASEPATH.'libs/smarty/libs/Smarty.class.php' );
class CI_Smarty extends Smarty {
 function CI_Smarty()
 {
  parent::Smarty();
  $this->compile_dir = APPPATH . "views/templates_c";
  $this->template_dir = APPPATH . "views/templates";
  $this->assign( 'APPPATH', APPPATH );
  $this->assign( 'BASEPATH', BASEPATH );
  log_message('debug', "Smarty Class Initialized");
 }
 function __construct()
 {
  parent::__construct();
  $this->compile_dir = APPPATH . "views/templates_c";
  $this->template_dir = APPPATH . "views/templates";
  $this->assign( 'APPPATH', APPPATH );
  $this->assign( 'BASEPATH', BASEPATH );
  // Assign CodeIgniter object by reference to CI
  if ( method_exists( $this, 'assignByRef') )
  {
   $ci =& get_instance();
   $this->assignByRef("ci", $ci);
  }
  log_message('debug', "Smarty Class Initialized");
 }
 
   function view($template, $data = array(), $return = FALSE)
 {
  foreach ($data as $key => $val)
  {
   $this->assign($key, $val);
  }
 
  if ($return == FALSE)
  {
 
  //注意这里使用了get_instance();但是在output类中final_output是受保护的,所以需要修改修饰符!
 
   $CI =& get_instance();
 
   $CI->output->final_output = $this->fetch($template);
 
   return;
  }
  else
  {
   return $this->fetch($template);
  }
 }
}
 
复制代码


ci2.0.1 smarty3.0.7无缝整合,新手必修技.zip (616.7 KB, 下载次数: 391)

评分

参与人数 1威望 +5 收起 理由
Hex + 5 我很赞同

查看全部评分

发表于 2011-3-30 15:20:11 | 显示全部楼层
占位,好好看看
发表于 2011-3-31 09:01:19 | 显示全部楼层
看样子不错, 不过不是很喜欢这种破坏结构的
发表于 2011-3-31 09:09:44 | 显示全部楼层
好吧,标记一下,做项目刚好需要用到!
发表于 2011-3-31 14:33:26 | 显示全部楼层
收藏...留著以後使用.
发表于 2011-3-31 20:53:35 | 显示全部楼层
mark ,很久没解决的问题,因为看得都是旧版本的指南。以后再用……多谢
发表于 2011-4-1 08:39:48 | 显示全部楼层
感觉为了高效,还是放弃模板引擎好一点。
发表于 2011-4-3 07:54:12 | 显示全部楼层
不是有内置模板么?
发表于 2011-4-4 22:06:37 | 显示全部楼层
还用smarty啊,我已经抛弃了smarty这种东西,太浪费资源了。
发表于 2011-4-7 22:24:03 | 显示全部楼层
明显是用新手来骗人,新手哪有这样入门的呢?

本版积分规则