Smarty中的注释和截断功能介绍

注释


代码如下:

{* 这是一个单行Smarty注释 来自于jb51.net,网页源代码里看不见*}

{* 这是一个多行
   Smarty注释
   并不发送到浏览器
*}

模板注释由星号包围,继而由分隔符包围,型如:{* 这是一个注释 *}。Smarty注释不会在最终模板的输出中显示,这点和不同。前者对于在模板中插入内部注释有用,因为没有人能看到。;-)

http://www.itlearner.com/code/smarty_cn/language.basic.syntax.html

截断truncate


代码如下:

$smarty->assign('hxtitle', 'Two Sisters Reunite after Eighteen Years at Checkout Counter.');

模板为:

代码如下:

{$hxtitle}
{$hxtitle|truncate}
{$hxtitle|truncate:30}
{$hxtitle|truncate:30:""}
{$hxtitle|truncate:30:"---"}
{$hxtitle|truncate:30:"":true}
{$hxtitle|truncate:30:"...":true}
{$hxtitle|truncate:30:'..':true:true}

输出为:

代码如下:

Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after...
Two Sisters Reunite after
Two Sisters Reunite after---
Two Sisters Reunite after Eigh
Two Sisters Reunite after E...
Two Sisters Re..ckout Counter.

可以不用在PHP里截取了:http://www.itlearner.com/code/smarty_cn/language.modifier.truncate.html

(0)

相关推荐

  • Smarty中的注释和截断功能介绍

    注释 复制代码 代码如下: {* 这是一个单行Smarty注释 来自于jb51.net,网页源代码里看不见*} {* 这是一个多行    Smarty注释    并不发送到浏览器 *} 模板注释由星号包围,继而由分隔符包围,型如:{* 这是一个注释 *}.Smarty注释不会在最终模板的输出中显示,这点和不同.前者对于在模板中插入内部注释有用,因为没有人能看到.;-) http://www.itlearner.com/code/smarty_cn/language.basic.syntax.ht

  • 如何在smarty中增加类似foreach的功能自动加载数据

    在smarty中使用自定义插件来加载数据(见:编写Smarty插件在模板中直接加载数据的详细介绍),在使用的时候还是感觉不够方便,灵机一动就想写成类似foreach那种标签: 第一步:在Smarty_Compiler.class.php的_compile_tag函数中增加: 复制代码 代码如下: //加载数据的开始标签case 'load': $this->_push_tag('load'); return $this->_complie_load_start($tag_args); brea

  • C#8.0中的索引与范围功能介绍

    C#8.0中, 新增了一个索引与范围的功能, 为访问序列中的单个元素或范围提供了一种简洁的语法. 在没有提供索引功能之前, 我们需要访问序列中的某个元素, 我们可以利用下标或者部分函数进行获取元素的数据, 如:获取数组中最后一个元素: string[] arr = new string[] { "冰晶凤凰", "影流之主", "德玛西亚", "艾瑞利亚", "寒冰射手" }; var str1 = arr.

  • IDEA插件之快速删除Java代码中的注释

    背景 有时,我们需要删除Java源代码中的注释.目前有不少方法,比如: 实现状态机.该方式较为通用,适用于多种语言(取决于状态机支持的注释符号). 正则匹配.该方式容易误判,尤其是容易误删字符串. 利用第三方库.该方式局限性较强,比如不同语言可能有不同的第三方库. 本文针对Java语言,介绍一种利用第三方库的方式,可以方便快速地移除代码中的注释. 原理 这个第三方库叫做JavaParser.它可以分析Java源码,并生成语法分析树(AST),其中注释也属于AST中的节点. 因此核心思路即为: J

  • Python如何脚本过滤文件中的注释

    确保对模块, 函数, 方法和行内注释使用正确的风格,Python中的注释有单行注释和多行注释.如果希望去除文件中所有注释,如何做呢? Python中的注释: Python中单行注释以 # 开头,例如: # 这是一个注释 print("Hello, World!") 多行注释用三个单引号 ''' 或者三个双引号 """ 将注释括起来,例如: #!/usr/bin/python3 ''' 这是多行注释,用三个单引号 这是多行注释,用三个单引号 这是多行注释,用

  • 介绍C语言程序中的注释等辅助语句如何使用

    目录 一.程序中的辅助语句(上) 二.程序中的辅助语句(下) 一.程序中的辅助语句(上) C语言中的注释 注释是帮助理解程序而编写的文本 注释本身对程序功能无任何贡献注释分为单行注释和多行注释 注释分为单行注释和多行注释 注意:单行注释不一定被编译器支持 注释的语法 单行注释 从 // 开始到当前行结束的所有文本(注释范围只涉及一行文本) 单行注释中可以重复出现 // (无特殊含义,被看作注释文本) 多行注释 从 */ 开始到 */ 结束的所有文本(注释范围可以涉及多行文本) 多行注释不支持嵌套

  • java中String.intern()方法功能介绍

    下文笔者讲述java中String.intern()方法的功能简介说明,如下所示: String.intern原理 String.intern():    此方法是一个Native方法      底层调用C++的 StringTable::intern方法实现 当通过语句str.intern()调用intern()方法后    JVM 就会在当前类的常量池中查找是否存在与str等值的String     若存在则直接返回常量池中相应Strnig的引用     若不存在,则会在常量池中创建一个等值

  • php中的注释、变量、数组、常量、函数应用介绍

    php中单引号与双引号的区别? 1. 由下可看出,双引号的变量是解析并输出,而单引号的变量不解析. 2.单引号的解析速度比双引号的快 3. 对于单引号来说,只有两个转义 \',\\ 4. 除了上述两个转义字符,其他都原样输出. 5. 对于双引号来说,可转义字符除\\,\',\"之外,还有\t, \r , \n 等 6.除了单引号和双引号用来声明字符串变量外,还有heredoc方式 程序代码: //$age = 22; //$str1 = '他今年 $age 岁'; //''原样输出 //$str

  • vue中eslintrc.js配置最详细介绍

    本文是对vue项目中自带文件eslintrc.js的内容解析, 介绍了各个eslint配置项的作用,以及为什么这样设置. 比较详细,看完能对eslint有较为全面的了解,基本解除对该文件的疑惑. /** * 参考文档 * [eslint英文文档]https://eslint.org/docs/user-guide/configuring * [eslint中文文档]http://eslint.cn/docs/rules/ */ /** * eslint有三种使用方式 * [1]js代码中通过注释

  • JavaScript 2018 中即将迎来的新功能

    JavaScript 2018 中即将迎来的新功能:异步生成器及更好的正则表达式 2018 年 6 月发布的最新年度 ECMAScript 更新,尽管在常见功能的积压上仍然远远小于 ECMAScript 6,但依然是迄今为止最大的年度版本. 身为 ECMAScript 编辑及微软在 ECMA TC39 委员会代表的 Brian Terlson 告诉 The New Stack:这个版本中两个最大的开发者功能是异步生成器和一些期待已久的正则表达式改进,以及 rest/spread 属性. "异步生

随机推荐