1、安装

安装Smarty发行版在/libs/目录里的库文件(就是解压了).

2、工作原理

美工人员
1. 写模板, HTML CSS JavaScript
2. 使用Smarty表现逻辑 放变量, 遍历和判断数据

PHP程序员
  1. PHP程序和原来一样(连接数据, 图,文件)
  2. 加载Smarty引擎, 并创建对象

  3. 向引擎中分配变量(分数据)

  4. 显示那个模板

3、Smarty使用注意事项

  1. 因为我们访问是PHP文件,而模板是在PHP中包含的内容,所以在模板中使用 图片,CSS文件,js文件,都要以 访问的PHP目录为主
  2. 所有display模板时(还是模板中include),都要以Smarty对象中指定的模板目录为基目录
  3. 如果想让各个目录下的PHP程序都可以加载Smarty和使用Smarty指定的 模板和编译目录,唯一的办法就是使用绝对路径。

4、在smarty中使用变量

(1)php程序中分配给模板变量

动态的数据(PHP从数据库或文件,以及算法生成的变量)

任何类型的数据都可以从PHP分配置过来

注意数组:关联数组不是使用【关联下标】,而是使用.下标。

(2)例子设置表格的外观

模板的外观(界面设计的变量)

要使用 $tpl->configs_dir="目录" //指定配置文件存放的目录

在模板中要使用 <{configs_load file="view.conf"}> 加载view.conf配置文件

使用section="区域" [设置区域]
<{#border#}>
<{$smarty.config.border}>

5、自定义函数

一种是使用注册的方式,注册函数和块。另一种是使用smarty插件,写的时候严格参照命名规范。

在smarty中调用函数,是以自定义的标记(类似于html)的形式。

6、变量调节器

(1)在Smarty文件中的变量后面使用 "|"后面加函数名,这个函数第一个参数就是这个变量,如果有其它参数, 使用“:”加参数, 多个参数使用":"分开

(2)组合调解器的使用

7、内建函数

在模板中的调用方式都和使用HTML标记类似

Smarty内部的函数,只能按手册提供的方式使用,不可以改,也不能添和删除

比如: 流程控制 if , 数组的遍历, 以及 文件件包含,配置文件导入都要使用Smarty的内建函数帮我们完成。

8、缓存功能

Smarty缓存和网页表态化一样, 使用Smarty缓存使用非常方便

  1. 需要开启缓存
  2. 指定一下缓存的时间
  3. 指定缓存文件保存位置

开启这些内容只需要为Smarty的属性初使化即可

注意:
  1. 一个模板只能有一个缓存文件,如果一个模板的多个文章,则需要每个文章有一个
缓存
$tpl->display("test.tpl", cacheid);

第二个参数,每变化一个值就会有一个不同的缓存(最好使用$_SERVER["REQUEST_URI"])

  2. 一定要处理,如果有缓存了就不要执行连接数据库和到数据库中操作数据表了。

使用smarty中的is_cached()方去判断,它的用法和display()相同

局部缓存设置
使用一个块标记完成

清除缓存功能

smarty第一天的更多相关文章

  1. smarty 第一条数据判断

    <div class="shangpin_rightdiv2"> <p>颜色</p> <ul id="toggle"& ...

  2. 转载-smarty教程(基本语法)

    转自:http://hi.baidu.com/qxxgvpdtzhbckpr/item/681049160d7be60db98a1aec 1.smarty的配置      首先,使用smarty第一件 ...

  3. PHP——smarty模板(第一天)

    smarty.class.php 主要的东西放在类里面templates 放模板templates_c 放缓存 类里面 $smarty->assign("author",&q ...

  4. Smarty的基本使用与总结

    含义: Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来. 环境需求:PHP5.2或者更高版本 我使用的环境是:PHP5.3,wi ...

  5. smarty使用

    smarty-牛刀小试 smarty 初识 官网 http://www.smarty.net/ Smarty is a template engine for PHP(PHP模板引擎) smarty使 ...

  6. 12月15日下午Smarty模板函数

    1.{$var=...} 这是{assign}函数的简写版,你可以直接赋值给模版,也可以为数组元素赋值. <{$a = 10}><!--赋值语句--> <{$a}> ...

  7. 12月15日smarty模板基本语法

    smarty基本语法: 1.注释:<{* this is a comment *}>,注意左右分隔符的写法,要和自己定义的一致. <{* I am a Smarty comment, ...

  8. 12月13日上午Smarty模版原理

    模板主要是用来让前端和后端分离的,前台页面只是一个前台页面,后台页面用php代码写逻辑,写完逻辑拿到前台显示. 一.写法 一般需要以下:写3个页面: 1.显示页面aa.html <!DOCTYP ...

  9. PHP四个阶段目标以及第一阶段学习内容

    PHP课程体系主要分为四个阶段,第一阶段讲的是网页HTML和数据库MySQL,第一阶段要学会网页制作的基础知识,熟用各种基本标签,对数据库进行操作,各项考核都能够达标,拿出出众的项目展示. 在第二个阶 ...

随机推荐

  1. C++容器类概述

    原文转自:http://blog.csdn.net/wangxiaolong_china/article/details/8362540 什么是容器 首先,我们必须理解一下什么是容器,在C++ 中容器 ...

  2. ASP.Net软件工程师基础(一)

    本人目前是一名有1年左右ASP.Net开发经验的的软件开发工程师,目前公司用的是MVC+EF+...做的网站.写这套总结性系列文章的目的有两个:一是帮助自己总结一下自己到底有多少斤两,而不是一味的学新 ...

  3. vs2013 ie10

    http://blog.163.com/qimo601@126/blog/static/1582209320143354446462/     @ECHO OFF   :IE10HACK  REG A ...

  4. 《Head First 设计模式》ch.3 装饰(Decorator)模式

    设计原则 类应该对修改关闭,对扩展开放(开放-关闭原则).在每个地方使用开放-关闭原则是一种浪费,也没有必要,因为这通常会引入新的抽象层次,增加代码复杂度.需要把注意力集中在设计中最有可能改变的地方. ...

  5. VC++中,如何定义callback函数和它的触发事件?

    对于回调函数的编写始终是写特殊处理功能程序时用到的技巧之一.先介绍一下回调的使用基本方法与原理. 1.在这里设:回调函数为A()(这是最简单的情况,不带参数,但我们应用的实际情况常常很会复杂),使用回 ...

  6. Crystal Report 处理当前系统时间

    Changed the print date format to HH/yy/MM/mm/SS/dd  (For Example:2014/01/23 16:30:45= 161430014523) ...

  7. java.lang.Exception: Socket bind failed: [730013] An attempt was made to acc

    在CMD命令行中启动运行startup.bat,启运程序总是闪退,查看日志发现如下错误: 26-Jan-2016 18:12:34.463 SEVERE [main] org.apache.coyot ...

  8. C#中messagebox用法

    [函数] <整型> MessageBox(<字符串 Text, <字符串> Title, <整型> nType,MessageBoxIcon);[函数说明] ...

  9. asp.net 页面url重写

    不更改情况下,页面路径为index.aspx?id=1,现在输入页面路径index/1时,也能访问到页面,这一过程叫做url重写 ①:在一个类里制定路径重写规则,以下为自定义UrlRewriterFi ...

  10. CSS长度单位

    罗列了CSS中常用的长度单位及比较 单位 含义 em 相对于父元素的字体大小 ex 相对于小写字母"x"的高度 rem 相对于根元素字体大小 px 相对于屏幕分辨率而不是视窗大小: ...