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学习 函数 课件
Jun 15 PHP
php切割页面div内容的实现代码分享
Jul 31 PHP
VIM中设置php自动缩进为4个空格的方法详解
Jun 14 PHP
ThinkPHP有变量的where条件分页实例
Nov 03 PHP
php中Socket创建与监听实现方法
Jan 05 PHP
php递归函数三种实现方法及如何实现数字累加
Aug 07 PHP
php中的常用魔术方法汇总
Feb 14 PHP
Yii2框架实现注册和登录教程
Sep 30 PHP
PHP请求远程地址设置超时时间的解决方法
Oct 29 PHP
CodeIgniter框架基本增删改查操作示例
Mar 23 PHP
IOS 开发之NSDictionary转换成JSON字符串
Aug 14 PHP
laravel 5.4 + vue + vux + element的环境搭配过程介绍
Apr 26 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
收音机术语解释
2021/03/01 无线电
一个简洁的多级别论坛
2006/10/09 PHP
php扩展ZF――Validate扩展
2008/01/10 PHP
PHP迅雷、快车、旋风下载专用链转换代码
2010/06/15 PHP
PHP关联数组的10个操作技巧
2013/01/21 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
2013/06/18 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
ThinkPHP框架安全实现分析
2016/03/14 PHP
javascript对象的property和prototype是这样一种关系
2007/03/24 Javascript
JQuery 无废话系列教程(一) jquery入门 [推荐]
2009/06/23 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
2011/03/28 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
JQuery select(下拉框)操作方法汇总
2015/04/15 Javascript
js中函数声明与函数表达式
2015/06/03 Javascript
JavaScript中Function()函数的使用教程
2015/06/04 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
2016/03/30 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
jQuery向webApi提交post json数据
2017/01/16 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
2017/06/09 jQuery
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
详解如何构建Promise队列实现异步函数顺序执行
2018/10/23 Javascript
浅谈JavaScript中的“!!”作用
2020/08/03 Javascript
vue 数据双向绑定的实现方法
2021/03/04 Vue.js
在Python操作时间和日期之asctime()方法的使用
2015/05/22 Python
python3 requests中使用ip代理池随机生成ip的实例
2018/05/07 Python
.NET现在共支持多少种语言
2014/02/26 面试题
会议开场欢迎词
2014/01/15 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
活动总结的格式
2014/05/07 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
义诊活动总结
2015/02/04 职场文书
计算机专业自荐信
2015/03/05 职场文书
出纳试用期自我评价
2015/03/10 职场文书
企业法人任命书
2015/09/21 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python