Smarty:变量调节器插件缓存

2024-04-04 15:48

本文主要是介绍Smarty:变量调节器插件缓存,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(一)变量调节器的功能(实例):

PHP:

<?php
include ("../libs/Smarty.class.php");
$smarty = new Smarty();
$smarty->reInitSmarty("../demo/templates","../demo/templates_c","../demo/configs");
$string = "'ni hao' PHP! java net 3g PHP! java net 3g";
$smarty->assign("cap",$string);
$smarty->assign("num",123.456789456123);
$smarty->display("variable_modifiers.tpl");
?>

母版文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>测试变量调节器</title>
</head>

<body>
Capitalize功能演示:<br />
原变量内容:<{$cap|escape:"htmlall"}><br />
应用后内容:<{$cap|capitalize}><br />
<hr />
count_characters功能演示:<br />
<{$cap}>的字符个数为(不计空格):<{$cap|count_characters}><br />
<{$cap}>的字符个数为(计空格):<{$cap|count_characters:true}><br />
<hr />
cat功能演示:<br />
给字符串<{$cap}>连接***之后:<{$cap|cat:"***"}><br />
<hr />
count_paragraphs功能演示:<br />
<{$cap}>的段落个数为:<{$cap|count_paragraphs}><br /><hr />
count_sentences功能演示:<br />
<{$cap}>的句子个数为:<{$cap|count_sentences}><br /><hr />
count_words功能演示:<br />
<{$cap}>的单词个数为:<{$cap|count_words}><br /><hr />
<!--利用date_format格式化当前系统日期/时间:<br />
当前系统时间为:<{$smarty.now|date_format:" %Y 年 %m 月 %d日 %H:%M:%S " }><br />-->
<{*string_format格式参数:%md(十进制整数) %x(十六进制整数) %o(八进制整数) %u(无符号数显示)*}>
<{$num}>通过%md格式化:<{$num|string_format:"%10d"}><br />
<{$num}>通过%m.nf格式化一个实数:<{$num|string_format:"%.2f"}><br />
<{$num}>通过%e格式化一个实数:<{$num|string_format:"%4.1e"}><br />
<{$cap}>应用缩进之后:<br />
<{$cap|indent:4:"&nbsp;"}><br />
<{$cap}>转换成小写:<{$cap|lower}><br />
<{$cap}>转换成大写:<{$cap|upper}><br />
<{$cap}>里面的PHP替换为java:<{$cap|replace:"PHP":"java"}><br />
<{$cap}>应用truncate截取字符串后的效果:<{$cap|truncate:30:"***":true}><br />
<{$cap}>应用spacify之后的效果:<{$cap|upper|spacify}>
</body>
</html>
*****************************************************************************************************************************************************************************************

(二)插件:就是把modifier.***.php放到plugin文件夹里,实例:

modifier.changecolor.php(插件功能:改变字体颜色):

<?php
function smarty_modifier_changecolor($string,$color='red'){
    $string="<font color='".$color."'>".$string."</font>";
    return $string;
    
    }
?>

母版文件:


<{$cap}>应用自定义changecolor后的效果:<{$cap|changecolor:"green"}>

略...

*****************************************************************************************************************************************************************************************

(三)缓存基础:
1.什么是缓存(cache)?
内存(临时存放数据,解决cpu和外部设备之间速度不匹配的问题)
高速缓存(cache)(解决cpu和内存之间速度不匹配的问题)
作用:提高计算机数据的访问速度
网站设计中(软件开发中)
缓存的概念:在PHP中,缓存就是硬盘中的一块区域,将生成的不变的页面放入这块区域当中,相当于直接放入了缓存。当用户重复访问相同页面的时候,直接从缓存区域调用页面。
2.如何应用缓存(smarty中)
(1)单页面单缓存(建立缓存)
步骤1:开启缓存($smarty->caching=true)
步骤2:设置缓存目录($smarty->cache_dir='')
步骤3:设置缓存文件的生存时间
步骤4:利用display()或者fetch()生成缓存文件


这篇关于Smarty:变量调节器插件缓存的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/876194

相关文章

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

GO语言短变量声明的实现示例

《GO语言短变量声明的实现示例》在Go语言中,短变量声明是一种简洁的变量声明方式,使用:=运算符,可以自动推断变量类型,下面就来具体介绍一下如何使用,感兴趣的可以了解一下... 目录基本语法功能特点与var的区别适用场景注意事项基本语法variableName := value功能特点1、自动类型推

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

java如何实现高并发场景下三级缓存的数据一致性

《java如何实现高并发场景下三级缓存的数据一致性》这篇文章主要为大家详细介绍了java如何实现高并发场景下三级缓存的数据一致性,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 下面代码是一个使用Java和Redisson实现的三级缓存服务,主要功能包括:1.缓存结构:本地缓存:使

Apache Ignite缓存基本操作实例详解

《ApacheIgnite缓存基本操作实例详解》文章介绍了ApacheIgnite中IgniteCache的基本操作,涵盖缓存获取、动态创建、销毁、原子及条件更新、异步执行,强调线程池注意事项,避免... 目录一、获取缓存实例(Getting an Instance of a Cache)示例代码:二、动态

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

Spring Boot中的路径变量示例详解

《SpringBoot中的路径变量示例详解》SpringBoot中PathVariable通过@PathVariable注解实现URL参数与方法参数绑定,支持多参数接收、类型转换、可选参数、默认值及... 目录一. 基本用法与参数映射1.路径定义2.参数绑定&nhttp://www.chinasem.cnbs

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件