1.    使用smarty

   1.1 项目引入 

    // 3, 连接数据库,提取相关数据
    $title = "Smarty模板引擎";
    $content = "Smarty模板引擎是目前业界使用的最多的模板引擎之一";

    // 4, 实例化Smarty对象
    $smarty = new Smarty;

    // 5, 更改smarty相关默认属性
    // 6, 通过assign方法给模板文件分配变量
    $smarty->assign('title', $title);
    $smarty->assign('content', $content);

    // 7, 通过display方法替换模板中的特殊标记并输出模板
    $smarty->display('index1.tpl');

  1.2  注意是否更改Smarty对象的默认属性       

      Smarty的默认定界符是{},其实是可以修改的!如何修改?
      可以修改smarty的两个属性:
      left_delimiter:左定界符,默认为{
      right_dilimiter:右定界符,默认为}

  1.3     是否需要更改默认目录的名字

       在Smarty中,核心目录的名字是不能随便更改的!比如,模板目录的名称默认的就是templates,

       但是也可以修改! 

       在smarty2.0中,可以通过以下的四个属性进行更改:
       template_dir:模板目录,默认的是为templates
       compile_dir:编译目录,默认的是templates_c
       config_dir:配置目录,默认为configs
       cache_dir:缓存目录,默认为cache

2.   模板注释  注意: 服务器端的注释不会显示在浏览器的源代码里面! 

    基本语法:
    {* 注释内容 *}

3.  变量调节器 

   基本语法为:

    如:              $str4 = "Hello,World!";

          $smarty->assign('str4', $str4);

 

    cat  

        {$变量名1|cat:$变量名2|cat:$变量名3}

        cat变量调节器:{$str1|cat:$str2|cat:$str3}

    date_format 

        {$变量名(时间戳)|date_format:‘%Y-%m-%d %H:%M:%S’}

       date_format变量调节器:{$time|date_format:'%Y-%m-%d %H:%M:%S'}

   default

       {$变量名|default:值}

       default变量调节器:{$personal_sign|default:'这个家伙很懒'}

   lower和upper

        {$变量名|lower}
       {$变量名|upper}

      lower变量调节器:{$str4|lower}
      upper变量调节器:{$str4|upper}

   escape
         {$变量名|escape}
                 escape变量调节器:{$str5|escape}
     strip_tags
      {$变量名|strip_tags}
       strip_tags变量调节器:{$str5|strip_tags}
         nl2br
      {$变量名| nl2br}
      nl2br变量调节器:{$str6|nl2br}
     replace
      {$变量名| replace:字符串1:字符串2}
      replace变量调节器:{$str7|replace:'英雄联盟':'撸啊撸'}
    string_format
      {$变量名| string_format:’%d’}
      string_format变量调节器:{$price|string_format:'%d'}
      truncate
      {$变量名|truncate:字符串长度:’…’}
      truncate变量调节器:{$introduce|truncate:900:'...'|upper|nl2br}

smarty模板引擎的更多相关文章

  1. 写一个迷你版Smarty模板引擎,对认识模板引擎原理非常好(附代码)

    前些时间在看创智博客韩顺平的Smarty模板引擎教程,再结合自己跟李炎恢第二季开发中CMS系统写的tpl模板引擎.今天就写一个迷你版的Smarty引擎,虽然说我并没有深入分析过Smarty的源码,但是 ...

  2. 深入浅出之Smarty模板引擎工作机制(二)

    源代码下载地址:深入浅出之Smarty模板引擎工作机制 接下来根据以下的Smarty模板引擎原理流程图开发一个自己的模板引擎用于学习,以便加深理解. Smarty模板引擎的原理,其实是这么一个过程: ...

  3. 深入浅出之Smarty模板引擎工作机制(一)

    深入浅出Smarty模板引擎工作机制,我们将对比使用smarty模板引擎和没使用smarty模板引擎的两种开发方式的区别,并动手开发一个自己的模板引擎,以便加深对smarty模板引擎工作机制的理解. ...

  4. Smarty模板引擎技术二

    Smarty模板引擎技术 内建函数 include_php内建函数 作用:载入一个php文件,将载入的文件的内容赋值给一个变量   注意:该内建函数只能在2.0中使用,如果使用的话,必须得实例化Sma ...

  5. Smarty模板引擎技术

    Smarty模板引擎技术 什么是模板引擎? 什么是Smarty模板引擎? 为何选择Smarty模板引擎? 如何使用Smarty模板引擎? 一.历史背景 场景一:回顾之前编写PHP项目的方式 //链接数 ...

  6. Ci框架整合smarty模板引擎

    Ci框架整合smarty模板引擎 备注:下载smarty时,最好选择2.6版本,其他测试有坑,ci可以是2.2或其他 大体思路:将smarty封装成ci框架的一个类,然后重新配置一下smarty,这样 ...

  7. 迷你版 smarty --模板引擎和解析

    http://blog.ipodmp.com/archives/php-write-a-mini-smarty-template-engine/ 迷你版Smarty模板引擎目录结构如下: ① 要开发一 ...

  8. smarty模板引擎原理解析

    //php 控制器文件 <?php//引入模板引擎文件include("20130304.php");$smarty =newTinySmarty();$qq_numbers ...

  9. smarty模板引擎中section循环loop与total的区别

    在smarty模板引擎的section循环中 $data=[101,102,103,105,104]; section的两个属性total与loop {section foo $data start= ...

随机推荐

  1. iOS 面试题(三):为什么 weakSelf 需要配合 strong self 使用 --转自唐巧

    问题 继续回答昨天的问题第二问. 我们知道,在使用 block 的时候,为了避免产生循环引用,通常需要使用 weakSelf 与 strongSelf,写下面这样的代码: __weak typeof( ...

  2. java8 学习系列--NIO学习笔记

    近期有点时间,决定学习下java8相关的内容: 当然了不止java8中新增的功能点,整个JDK都需要自己研究的,不过这是个漫长的过程吧,以自己的惰性来看: 不过开发中不是有时候讲究模块化开发么,那么我 ...

  3. python的__future__特性

    使用python的__future__特性, __future__是在旧版本的python中提供了新版python的特性. 1) 在python2中相除返回浮点数,在python3中默认返回浮点数 & ...

  4. ios10 xcode8 适配的那些事

    1.首先open Url 废弃了. http://www.tuicool.com/articles/jiMr2qA

  5. hadoop实战 -- 网站日志KPI指标分析

    本项目分析apache服务器产生的日志,分析pv.独立ip数和跳出率等指标.其实这些指标在第三方系统中都可以检测到,在生产环境中通常用来分析用户交易等核心数据,此处只是用于演示说明日志数据的分析流程. ...

  6. GPS部标平台的架构设计(五)-地图服务算法库

    GPS平台,需要和各种地图打交道,需要解决以下的问题: 1.坐标偏移,这个不用多说,需要将原始坐标加偏,然后在百度地图或谷歌上显示出来,需要注意的是百度地图的加偏是偏上再偏,谷歌.高德地图等是火星坐标 ...

  7. html中input标签的tabindex属性

    当浏览者浏览网站时可以通过按TAB键在网页的链接中依次移动,这是一个相当方便实用的功能.但如果网页中链接太多,恐怕按TAB键就没什么作用了,这时不妨通过改变TAB键移动的顺序来突出重点,在某些重要页面 ...

  8. SLP alpha 阶段总结

    这学期快结束了,SLP的alpha阶段也结束了.在alpha版中,我实现了SLP的基础练习模块和全局设置模块,其他几个模块由于能力有限.时间有限而没有实现. 其中基础练习模块目前只能支持4/4拍,有三 ...

  9. android 编译过程

    引用:http://www.cnblogs.com/devinzhang/archive/2011/12/20/2294686.html http://blog.sina.com.cn/s/blog_ ...

  10. 夺命雷公狗----Git---6---GitHub基本使用

    github不是git. git是一个版本控制系统,是一个版本控制软件,从而完善共同开发... github是一个网站,基于git的,主要作用是代码托管的.... 托管的几层含义如下: 1:将自己平常 ...