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. 现在web前端这么火,钱景怎么样啊?

    web前端开发工程师可以说是一个全新的职业,在IT整个行业中真正受到重视的时间没有超过5年,也正因为这样,大家越来越想了解web前端工程师的前景究竟怎么样? web前端培训就业前景如何?web前端工程 ...

  2. gitlab改用ssh操作

    1.配置ssh http://blog.csdn.net/xyzchenxiaolin/article/details/51853319http://blog.csdn.net/r8hzgemq/ar ...

  3. 手机QQ内置网页,微信内置网页中进行分享到QQ和微信的操作

    微信内的网页分享: API内容详见微信开发文档  https://mp.weixin.qq.com/wiki 这里需要注意的是:调用微信API的时候修改的是微信内网页右上角三个点那里打开后,选择分享之 ...

  4. CXF WebService整合SpringMVC的maven项目

    首先推荐博客:http://www.cnblogs.com/xdp-gacl/p/4259481.html   http://blog.csdn.net/hu_shengyang/article/de ...

  5. (转)nodejs中npm常用命令

    npm install <name>安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本, ...

  6. ios移动端部分手机不支持background-attachment: fixed 的解决办法

    ios系统和某些移动端background-attachment:fixed不兼容性,没有任何效果,但可以hack一下就可以了,代码如下: ps:想在哪个标签加背景,可以在它class后:before ...

  7. ubuntu安装使用latex和texmaker--PC端

    参考文档 据说中文文献可能不识别,可能用到的参考资料

  8. z-index

    1.定位对象能够遮盖非定位对象,除非定位对象的z-index值为负数. 2.同层级定位对象z-index大的能够覆盖z-index值小的. 2.1  同层级的子集相互比较要先看父集(即同层级)的大小; ...

  9. swift基础:第三部分:对第一部分的补充说明

    今天是我学习swift的第二天,虽然我和swift的距离有点远,但我相信,我会慢慢的接近这门语言的.好了,我们聊聊昨天晚上的事吧,昨天晚上下班早,回到家时,真是惊喜哈,宿舍那两做好了饭,等我吃饭,想对 ...

  10. 夺命雷公狗-----React---18--value和defaultValue的区别

    <!DOCTYPE> <html> <head> <meta charset="utf-8"> <title></ ...