侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

php smarty模板引擎的6个小技巧

php  /  管理员 发布于 7年前   181

下面本文将以具体的例子一一分析:

capture标签

capture的中文意思是抓取,它的作用是抓取模板输出的数据,当我们需要它的时候,调用它,以得到抓取数据的目的。如下例子:

复制代码 代码如下:

{capture name="test"}

{/capture}

{$smarty.capture.test}

说明:在{capture name="test"}和{/capture}之间的内容被存储到变量$test中,该变量由name属性指定.在模板中通过 $smarty.capture.test 访问该变量.如果没有指定name 属性,函数默认将使用"default" 作为参数,这一点类似Jquery中的clone方法。

config_load标签

config_load可以直接将文件中的内容读取出来,这样可以省掉assign这一步,如下使用示例:

test.csv 文件:

复制代码 代码如下:

pageTitle = "config_load_test"

bodyBgColor = "#eeeeee"

img = "girl.jpg"

width="100"

height="100"

则模板 index.tpl 文件中可以如下引用以上 test.csv 文件:

复制代码 代码如下:

{config_load file="test.csv"}

{#pageTitle#}



注:上述过程中如果出现这样的问题Warning: Smarty error: unable to read resource, 请查看一下,你的test.csv是不是放在smarty的配置目录中,默认配置目录是configs 目录。

php标签

 当你习惯了assign后,你有没有想过,在模板文件里面直接写php代码呢,虽然非常不建议这么做,但有时候迫于业务的需求不得不这样干的时候该肿么办呢?看看下面这个例子:

复制代码 代码如下:
{php}

global $result;

foreach($result as $key=>$value){

    echo "key=$key,value=>$value
";

}

{/php}

strip标签

strip标签的作用是去除标签内的空格和回车,我自己感觉这个标签还是挺有用的,可以压缩最终输出的html格式,想要看效果的话,看看本站的源代码就知道了,是不是很酷,呵呵:

复制代码 代码如下:

{strip}

    strip

   

        php smarty strip 压缩html输出,www.phpernote.com 看源码效果

   

{/strip}

fetch标签

fetch标签和php里面的函数 file_get_contents 功能差不多,都可以把文件中的内容读出来,并且可以将读出来的结果以字符串的形式赋值给某个变量,如下使用案例:

复制代码 代码如下:

{fetch file="./aaaa.txt" assign="result"}

{if is_array($result)}

is array

{else if}

not array

{/if}


使用常量

在php中使用 define 定义的常量可以在smarty模板中直接使用

使用方法如下:

复制代码 代码如下:

{$smarty.const.你定义的常量名}


 

您可能感兴趣的文章:

  • 需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
  • PHP原生模板引擎 最简单的模板引擎
  • PHP中MVC模式的模板引擎开发经验分享
  • php模板引擎技术简单实现
  • Pain 全世界最小最简单的PHP模板引擎 (普通版)
  • CodeIgniter使用phpcms模板引擎
  • 简单的自定义php模板引擎
  • PHP的自定义模板引擎
  • 自定义min版smarty模板引擎MinSmarty.class.php文件及用法
  • PHP实现简单的模板引擎功能示例


  • 上一条:
    PHP模板引擎Smarty的缓存使用总结
    下一条:
    PHP中使用smarty生成静态文件的例子
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客