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. 数据库连接池原理 与实现(动脑学院Jack老师课后自己的练习有感)

    第一步: 首先创建一个数据库连接池的接口: 数据库连接池接口有两个主要的方法,其中一个getConnection();  通过数据库连接池返回给用户封装的数据库连接对象 createConnectio ...

  2. Linux最常用命令的小总结

    目录及文件的基本操作: cd  .. 切换到当前目录的上一级目录 cd 切换工作目录至当前用户的家目录 cd - 返回到上一个打开的目录(像遥控器上的切换键,切换到上一个播放的电视频道) ll -h ...

  3. Spring MVC配置

    web配置 <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="ht ...

  4. WVS简单使用

    Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞,如交叉站点脚本,sql 注入等.在被 ...

  5. Java中的Atomic包使用指南

    Atomic包介绍 在Atomic包里一共有12个类,四种原子更新方式,分别是原子更新基本类型,原子更新数组,原子更新引用和原子更新字段.Atomic包里的类基本都是使用Unsafe实现的包装类. 原 ...

  6. new一張form時用using{}的好處。

    以下代碼,用Using可避免一些問題,例如handel10000.如果PaymentForm裏面用dialogresult=''而不是close或X,(close或X會即時dispose回收,但dia ...

  7. RDIFramework.NET ━ .NET快速信息化系统开发框架 ━ 工作流程组件介绍

    RDIFramework.NET ━ .NET快速信息化系统开发框架 工作流程组件介绍 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.Net框架部 ...

  8. hdu5714 拍照[2016百度之星复赛C题]

    由于船移动的速度都一样,那么对于往一个方向的船相对距离其实是不变的,我们可以把往一个方向移动的船都视作静止,并求出在哪些观测位置可以看到,很明显对于船[x,y,z],当x+z>=y-z的时候,可 ...

  9. EF Core 1.0 和 SQLServer 2008 分页的问题

    EF Core 1.0 在sqlserver2008分页的时候需要指定用数字分页. EF Core1.0 生成的分页语句中使用了 Featch Next.这个语句只有在SqlServer2012的时候 ...

  10. eclispe或者myeclispe maven jar包不能部署到tomcat下

    我们在做web开发是,经常都要在eclipse或者myeclipse中搭建web服务器,并将开发中的web项目部署到web服务器进行调试,在此,我选择的是tomcat服务器.之前部署web项目到tom ...