`

Yii整合smarty

    博客分类:
  • Yii
 
阅读更多

在protected下的extensions文件夹放入我们的smarty类包,按照约定我们同在protected下的extensions(Yii的扩展默认都扔到这里)中建立CSmarty类文件。

内容如下:

  1. <?php  
  2. /**  
  3. *Author:Elite  
  4. */ 
  5.  
  6. require_once(Yii::getPathOfAlias('application.extensions.smarty').DIRECTORY_SEPARATOR.'Smarty.class.php');  
  7. define('SMARTY_VIEW_DIR', Yii::getPathOfAlias('application.views'));  
  8.  
  9. class CSmarty extends Smarty {  
  10.     const DIR_SEP = DIRECTORY_SEPARATOR;  
  11.     function __construct() {  
  12.         parent::__construct();  
  13.          
  14.         $this->template_dir = SMARTY_VIEW_DIR;  
  15.         $this->compile_dir = SMARTY_VIEW_DIR.self::DIR_SEP.'template_c';  
  16.         $this->caching = true;  
  17.         $this->cache_dir = SMARTY_VIEW_DIR.self::DIR_SEP.'cache';  
  18.         $this->left_delimiter  =  '<!--{';  
  19.         $this->right_delimiter =  '}-->';  
  20.         $this->cache_lifetime = 3600;  
  21.     }  
  22.     function init() {}  
  23. }  
  24. ?> 

 

然后建立相关联的文件夹。

 

紧接这是我们的配置部分

打开protected/config/main.php

在components数组中加入

'smarty'=>array(
    'class'=>'application.extensions.CSmarty',
),

最后在action中直接用Yii::app()->smarty就可以试用smarty了。如果每次在action中使用Yii::app()->smarty比较麻烦的话,可以在components下的Controller中可以加入

protected $smarty = '';

protected function init() {
       $this->smarty = Yii::app()->smarty;
 }

然后在action中直接可以用$this->smarty使用smarty了。

本文出自 “我相信” 博客,请务必保留此出处http://mrcelite.blog.51cto.com/2977858/789406

分享到:
评论

相关推荐

    Smarty框架安装使用实例

    Smarty常与MVC框架结合使用,如Yii、Laravel等。在这些框架中,你可以配置Smarty为视图解析器,实现模板的加载和渲染。 总结,Smarty框架通过分离PHP代码和HTML,提高了代码的可读性和可维护性。了解并熟练掌握...

    php手册大全,jquery手册,js手册,smarty,手册

    1. Smarty安装与配置:如何设置 Smarty 并在项目中整合使用。 2. 模板语法:变量、控制结构(如if/else、foreach)、函数、模板继承和布局。 3. Smarty配置:模板缓存、变量预处理、安全设置等。 4. 插件开发:...

    (全)传智播客PHP就业班视频完整课程

    10-19 5 smarty 字符串 自定义插件 缓存 10-19 6 smarty实例应?? 10-19 7 smarty实例应用2 10-19 8 smarty实例应用3 10-20 1 smarty应用 更换网站皮肤 10-20 2 smarty应用 更换网站皮肤2 10-20 3 smarty应用 更换...

    史上最全韩顺平传智播客PHP就业班视频,10月份全集

    10-19 5 smarty 字符串 自定义插件 缓存 10-19 6 smarty实例应?? 10-19 7 smarty实例应用2 10-19 8 smarty实例应用3 10-20 1 smarty应用 更换网站皮肤 10-20 2 smarty应用 更换网站皮肤2 10-20 3 smarty应用 更换...

    韩顺平PHP JS JQUERY 所有视频下载种子 货真价实

    10-19 5 smarty 字符串 自定义插件 缓存 10-19 6 smarty实例应?? 10-19 7 smarty实例应用2 10-19 8 smarty实例应用3 10-20 1 smarty应用 更换网站皮肤 10-20 2 smarty应用 更换网站皮肤2 10-20 3 smarty应用 更换...

    史上最全传智播客PHP就业班视频课,8月份视频

    10-19 5 smarty 字符串 自定义插件 缓存 10-19 6 smarty实例应?? 10-19 7 smarty实例应用2 10-19 8 smarty实例应用3 10-20 1 smarty应用 更换网站皮肤 10-20 2 smarty应用 更换网站皮肤2 10-20 3 smarty应用 更换...

    史上最全韩顺平传智播客PHP就业班视频,9月份全集

    10-19 5 smarty 字符串 自定义插件 缓存 10-19 6 smarty实例应?? 10-19 7 smarty实例应用2 10-19 8 smarty实例应用3 10-20 1 smarty应用 更换网站皮肤 10-20 2 smarty应用 更换网站皮肤2 10-20 3 smarty应用 更换...

    php相关帮助手册

    CHM(Compiled Help Manual)文件是Windows的帮助文件格式,它将所有这些手册整合成一个易于浏览和搜索的格式,为开发者提供了一站式的参考资料。 总的来说,这个压缩包提供了全面的PHP生态系统知识,无论是初学者...

    PHP仿桔子威客刷单系统整站程序源码打包 完美运营版.rar

    - **模板引擎**:如Smarty,用于分离前端展示和后端逻辑,便于页面设计和维护。 - **API接口**:如果系统需要与其他电商平台(如淘宝、京东)集成,可能需要编写API接口进行数据交换,遵循RESTful原则。 - **缓存...

    整站程序雪缘动感在线系统-luckysnow-php

    4. **模板引擎**:可能采用了Smarty或其他模板引擎,将业务逻辑与视图分离,便于维护和更新。 5. **安全机制**:包括输入验证、SQL注入防护、XSS攻击防御等,确保系统安全性。 6. **API接口**:可能提供API接口,与...

    整站程序杭州家教网-jj0571.rar

    6. **支付集成**:如果网站支持在线支付,可能涉及第三方支付接口的整合,如支付宝或微信支付。 7. **搜索与排序**:如何实现家教信息的查询和筛选功能。 8. **模板引擎**:如Twig或Smarty,用于动态生成网页内容。 ...

    基于PHP的实物卡售卡商城系统(商城免登录)源码.zip

    这种设计模式通常是为了...其免登录功能依赖于session和cookie技术,而支付接口的整合和安全性则体现了对用户隐私和交易安全的重视。此外,系统的可维护性和扩展性也通过合理的设计和选择合适的开发框架得到了保证。

    php课程

    13. **PHP框架**:随着对PHP的深入,你可能还会接触到像Laravel、Symfony、Yii等流行的PHP框架,它们提供了更高级的开发工具和最佳实践。 14. **Web安全**:学习如何防范SQL注入、XSS跨站脚本攻击、CSRF跨站请求...

    PHP实例开发源码-吉林市php百姓网整站源码.zip

    5. **模板引擎**:为了实现前后端分离,源码可能使用了模板引擎,如Smarty或Twig,使得开发者可以专注于业务逻辑而不必关心视图层的细节。 6. **用户认证与授权**:对于一个用户可以发布信息的平台,用户认证和权限...

    php教程php教程.rar

    12. **模板引擎**:如Smarty,允许将业务逻辑与显示逻辑分离,提升代码可维护性。 13. **框架应用**:像Laravel、Symfony、Yii等PHP框架,提供了一套完整的开发结构和工具,加速开发进程。 14. **PHP与前端技术...

    phpyzm_jb51.rar

    9. **第三方库和框架**:如果项目使用了PHP框架(如Laravel、Symfony、Yii等)或第三方库(如Composer管理的),则可以学习到如何整合和利用这些资源提升开发效率。 10. **性能优化**:查看源码中的缓存机制(如...

    productifes2

    - Laravel、Symfony、Yii等流行框架,提供快速开发环境,包含MVC架构、依赖注入、路由、中间件等特性。 8. PHP安全实践: - 防SQL注入:使用预处理语句或参数化查询。 - 防XSS攻击:使用htmlspecialchars()对...

    大型房产网站

    PHP是一种广泛使用的开源脚本语言,尤其适合于Web开发,因为它能够轻松地与HTML整合,从而为网页添加动态交互性。MySQL则是一款流行的开源关系型数据库管理系统,因其高性能、可扩展性和易用性而被广大开发者所青睐...

    works-in-progress

    10. **框架应用**:如Laravel、Symfony、Yii等,这些框架提供了一套完整的开发工具和最佳实践,可以快速构建复杂的Web应用。 11. **安全性**:包括输入验证、防止SQL注入、XSS攻击等,确保应用程序的安全。 12. **...

Global site tag (gtag.js) - Google Analytics