首页 后端开发 php教程 Smarty高级应用之缓存操作技巧分析_PHP

Smarty高级应用之缓存操作技巧分析_PHP

May 27, 2016 am 10:15 AM
smarty 缓存操作

本文实例讲述了Smarty高级应用之缓存操作技巧。分享给大家供大家参考,具体如下:

smarty缓存控制

smarty提供了强大的缓存功能。但有时我们并不希望整篇文档都被缓存,而是有选择的缓存某一部分内容或某一部分内容不被缓存。例如你在页面上端使用一个带有广告条位置的模板,广告条可以包含任何HTML、图象、FLASH等混合信息. 因此这里不能使用一个静态的链接,同时我们也不希望该广告条被缓存. 这就需要在 insert 函数指定,同时需要一个函数取广告条的内容信息。smarty也提供了这种缓存控制能力。

代码如下:

$smarty->register_function('current_time','smarty_function_current_time',false);

但insert函数默认是不缓存的。并且这个属性不能修改。从这个意义上讲insert函数对缓存的控制能力似乎不如register_function和register_block强。

(2)使用方便性:

但是insert函数使用非常方便。不用显示注册,只要在当前请求过程中包含这个函数smarty就会自动在当前请求的过程中查找指定的函数。

当然register_function也可以做到不在运行时显示注册。但是那样做的效果跟其他模版函数一样,统统被缓存,并且不能控制。

如果你使用在运行时显示调用register_function注册自定义函数,那么一定要在调用is_cached()方法前完成函数的注册工作。

否则在is_cached()这一步缓存文档将因为找不到注册函数而导致smarty错误

Smarty用户自定义函数实例

<&#63;php
$smarty->register_function('date_now', 'print_current_date');
function print_current_date($params, &$smarty)
{
 if(empty($params['format'])) {
  $format = "%b %e, %Y";
 } else {
  $format = $params['format'];
 }
 return strftime($format,time());
}
&#63;>

登录后复制

在模板中使用

{date_now}
{* or to format differently *}
{date_now format="%Y/%m/%d"}

登录后复制

更多关于Smarty相关内容感兴趣的读者可查看本站专题:《smarty模板入门基础教程》、《PHP模板技术总结》、《PHP基于pdo操作数据库技巧总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用PHP和Smarty实现前后端分离开发 如何使用PHP和Smarty实现前后端分离开发 Jun 25, 2023 pm 01:46 PM

在现代web开发中,前后端分离已经成为了一个非常流行的趋势,它能够让开发者们更好地组织项目并且提高了项目开发的效率。PHP和Smarty是两个非常常用的技术,它们可以用来实现前后端分离的开发方式。本文将会介绍如何使用PHP和Smarty来实现前后端分离开发。什么是前后端分离开发在传统的web开发中,前端主要负责页面的呈现以及与后端交互的逻辑。后端则主要负责业

PHP中的模板引擎Smarty初探 PHP中的模板引擎Smarty初探 May 11, 2023 pm 05:15 PM

现如今,网站的开发离不了一个重要的组成部分——模板引擎。模板引擎是指一种将页面模板和数据结合起来生成具有特定格式的html代码的工具。在各种网站开发框架中,模板引擎是一个必不可少的组件,因为模板引擎可以大量减少代码的重复性和提高页面的动态性。其中一种最常见和流行的模板引擎是Smarty。Smarty是一个基于PHP语言开发的DSL(DomainSpecif

PHP开发中如何使用Smarty模板引擎 PHP开发中如何使用Smarty模板引擎 Jun 27, 2023 pm 01:28 PM

作为一名PHP开发者,使用模板引擎是理所当然的选择。Smarty是一种流行的模板引擎,它提供了一种将HTML/CSS/JavaScript与PHP代码分离的方式,使开发人员能够更好地组织和管理项目。在本文中,我们将学习在PHP开发过程中如何使用Smarty模板引擎。一、安装Smarty在之前,我们必须安装Smarty。在本文中,我们将使用Composer安装

如何使用PHP和Smarty模板引擎 如何使用PHP和Smarty模板引擎 May 11, 2023 pm 03:33 PM

PHP是一种强大的服务器端脚本语言,可以用于开发Web应用程序。在Web开发的早期阶段,程序员们使用了很多HTML和JavaScript代码来开发Web应用程序。但是,这种方法很难维护和管理,因为HTML和JavaScript代码可能会变得非常复杂。为了解决这个问题,Smarty模板引擎被创建出来。Smarty是一种基于PHP开发的模板引擎,用于管理和生成W

Swoole实战:如何使用协程进行缓存操作 Swoole实战:如何使用协程进行缓存操作 Nov 07, 2023 pm 03:00 PM

近年来,Swoole作为一个高性能的异步网络框架,备受开发者青睐,被广泛应用于各种领域。在使用Swoole的过程中,协程是其中一个非常重要的概念,它可以让我们以同步的方式编写异步代码。本文将介绍在Swoole中如何使用协程进行缓存操作,并提供实用的代码示例。一、什么是协程协程是一种用户态的轻量级线程,它由程序员通过代码来管理,避免了系统线程的消耗和切换。在S

如何在CakePHP中使用Smarty? 如何在CakePHP中使用Smarty? Jun 03, 2023 pm 03:10 PM

CakePHP是一个开源的PHP框架,它提供了丰富的功能和工具来加速web应用程序的开发。其中一个强大的功能就是模板引擎。默认情况下,CakePHP使用PHP的原生语法来进行视图渲染。但是,有时候我们可能想要使用另一种模板引擎,如Smarty。本文将介绍如何在CakePHP中使用Smarty。一、什么是Smarty?Smarty是一个基于模板的PHP框架,它

thinkphp和smarty是什么 thinkphp和smarty是什么 Jun 14, 2022 pm 05:56 PM

thinkphp是一个开源轻量级PHP框架,是用来简化企业级应用开发和敏捷WEB应用开发的;使用ThinkPHP,开发者可以更方便和快捷的开发和部署应用。Smarty是一个PHP模板引擎,可以更好的帮助开发者分离程序逻辑和页面显示(业务逻辑和显示逻辑分离),使程序员改变程序的逻辑内容不会影响到前端人员的页面设计,前端人员重新修改页面不会影响到程序的程序逻辑。

Smarty SSTi怎么用 Smarty SSTi怎么用 May 15, 2023 am 11:37 AM

题目描述题目提供了一个读取XFF头的api,页面最下方有BuildWithSmarty的字样,可以确定是用Smarty引擎写的.基本上可以确定该页面存在SSTi的可能性将xff头从127.0.0.1改为127.0.0{1 2}出现如下结果ssti无疑了最终payload是X-Forwarded-For:{ifvar_dump(file_get_contents(&#39;/flag&#39;))}{/if}SmartySSTI利用Smarty是基于PHP开发的,对于Smarty的

See all articles