Smarty使用自定义资源的方法


Posted in PHP onAugust 08, 2015

本文实例讲述了Smarty使用自定义资源的方法。分享给大家供大家参考。具体如下:

<?php
// put these function somewhere in your application
function db_get_template ($tpl_name, &$tpl_source, &$smarty_obj)
{
 // do database call here to fetch your template,
 // populating $tpl_source
 $sql = new SQL;
 $sql->query("select tpl_source
   from my_table
   where tpl_name='$tpl_name'");
 if ($sql->num_rows) {
 $tpl_source = $sql->record['tpl_source'];
 return true;
 } else {
 return false;
 }
}
function db_get_timestamp($tpl_name, &$tpl_timestamp, &$smarty_obj)
{
 // do database call here to populate $tpl_timestamp.
 $sql = new SQL;
 $sql->query("select tpl_timestamp
   from my_table
   where tpl_name='$tpl_name'");
 if ($sql->num_rows) {
 $tpl_timestamp = $sql->record['tpl_timestamp'];
 return true;
 } else {
 return false;
 }
}
function db_get_secure($tpl_name, &$smarty_obj)
{
 // assume all templates are secure
 return true;
}
function db_get_trusted($tpl_name, &$smarty_obj)
{
 // not used for templates
}
// register the resource name "db"
$smarty->register_resource("db", array("db_get_template",
     "db_get_timestamp",
     "db_get_secure",
     "db_get_trusted"));
// using resource from php script
$smarty->display("db:index.tpl");
?>

希望本文所述对大家基于smarty的php程序设计有所帮助。

PHP 相关文章推荐
PHP 中文处理技巧
Apr 25 PHP
php操作excel文件 基于phpexcel
Jul 02 PHP
php中数字0和空值的区别分析
Jun 05 PHP
PHP根据两点间的经纬度计算距离
Oct 31 PHP
学习php开源项目的源码指南
Dec 21 PHP
php使用pdo连接mssql server数据库实例
Dec 25 PHP
php获取文件名后缀常用方法小结
Feb 24 PHP
php使用自定义函数实现汉字分割替换功能示例
Jan 30 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
PHP检测一个数组有没有定义的方法步骤
Jul 20 PHP
PHP终止脚本运行三种实现方法详解
Sep 01 PHP
SESSION存放在数据库用法实例
Aug 08 #PHP
摘自织梦CMS的HTTP文件下载类
Aug 08 #PHP
摘自织梦CMS中的图片处理类
Aug 08 #PHP
PHP模拟asp.net的StringBuilder类实现方法
Aug 08 #PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 #PHP
PHP模拟asp中response类实现方法
Aug 08 #PHP
PHP实现根据图片色界在不同位置加水印的方法
Aug 08 #PHP
You might like
php+mysql+jquery实现日历签到功能
2017/02/27 PHP
PHP调用Mailgun发送邮件的方法
2017/05/04 PHP
解决php写入数据库乱码的问题
2019/09/17 PHP
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
document.getElementById介绍
2011/09/13 Javascript
JQquery的一些使用心得分享
2012/08/01 Javascript
javascript根据像素点取位置示例
2014/01/27 Javascript
javascript轻量级模板引擎juicer使用指南
2014/06/22 Javascript
js实现最短的XML格式化工具实例
2015/03/12 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
jquery 抽奖小程序实现代码
2016/10/12 Javascript
js实现点击每个li节点,都弹出其文本值及修改
2016/12/15 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
2017/04/03 jQuery
JS基于对象的特性实现去除数组中重复项功能详解
2017/11/17 Javascript
微信小程序实现签到功能
2018/10/31 Javascript
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
[01:32]2014DOTA2西雅图邀请赛 CIS我们有信心进入正赛
2014/07/08 DOTA
[01:15:56]2018DOTA2亚洲邀请赛3月30日 小组赛A组 TNC VS Newbee
2018/03/31 DOTA
Python中使用 Selenium 实现网页截图实例
2014/07/18 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
python去重,一个由dict组成的list的去重示例
2019/01/21 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
python编写简单端口扫描器
2019/09/04 Python
Python3实现监控新型冠状病毒肺炎疫情的示例代码
2020/02/13 Python
python里的单引号和双引号的有什么作用
2020/06/17 Python
python 爬虫如何正确的使用cookie
2020/10/27 Python
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
三维科技面试题
2013/07/27 面试题
港湾网络笔试题
2014/04/19 面试题
final, finally, finalize的区别
2012/03/01 面试题
高一新生军训方案
2014/05/12 职场文书
计算机相关专业自荐信
2014/07/02 职场文书
2015年新学期寄语
2015/02/26 职场文书
教师岗位说明书
2015/09/30 职场文书
解决pytorch 损失函数中输入输出不匹配的问题
2021/06/05 Python
Apache Pulsar结合Hudi构建Lakehouse方案分析
2022/03/31 Servers