主要是libs里面的smarty类,和init.inc.php配置文件
 
剩下的是php文件夹、模板文件夹,临时文件夹、缓存文件夹、配置文件夹、插件文件夹
 
调用main文件夹中的php文件,通过libs文件夹中的smarty类调用注册(assign()方法),再调用显示模板的方法(display())
 
 
smarty变量语法:
注释语法: <{*  $a *}>
可以在模版中进行运算:<{$a+$b}>
可以忽略smarty解析:<{literal}>  #top{}  <{/literal}>
在模版中使用数组:
    类似与php    索引数组可以用下标:<{$shuzu[0]}>
                        关联数组用key值:<{$shuzu["one"]}>,还可以用. :<{$shuzu.two}>。。。
注册方法不止可以注册字符串,可以是任意类型,数组、对象等
$db = new DBDA();
$smarty->assign("duixiang",$db);
在模板中调用对象中的字段:<{$duixiang->host}>
 
介绍配置文件的使用:
配置文件的后缀是.conf:test.conf
内容是:
[one]                //分段,可以同名的key名
bgcolor=red
color=white
[two]
bgcolor=green
color=blue
引入配置文件
<{config_load file='test.conf' section="one"}>
使用需要  #key#
<div style="width:200px; height:200px; font-size:20px; font-weight:bold; {#bgcolor#}>; color:<{#color#}>">
第一个DIV
</div>
 
smarty保留字:
<{$smarty.const}>可以直接访问smarty常量:语法
<{$smarty.const.ROOT}>
定义常量在配置文件init中:语法
define("CSS_PATH",ROOT."css/");
 
 
if、foeach语句:
if语句中的判断符号因为smarty有分隔符的元婴,需要处理一下

if语句:if有结束标签

<{if $a lt 10 }>
11111111111111
<{elseif $a lt 20 }>
22222222222222
<{else}>
3333333
<{/if}>
 
foreach循环语句:
<{foreach $shuzu as $k=>$v}>
<div><{$v@index}>--<{$v@iteration}>--<{$v@first}>--<{$k}>--><{$v}></div>
<{/foreach}>
<{$v@index}>:当前数组的下标,从0开始
<{$v@iteration}>:当前数组的迭代,从1开始
<{$v@first}>:如果是第一个返回true
                            如果是最后一个返回true
 
 

smarty文件夹,第一个smarty实例总结的更多相关文章

  1. 在有道词典程序文件夹发现一个后缀名为sql的数据库(SQLite)

    缘起 在清理电脑磁盘的时候,看一看各安装文件夹有占用了多大容量,发现有道词典居然达140MB了,于是进去看看. 发现个有趣的文件:XXX.sql. 首先我们看一看它的安装文件夹的结构: Dict └─ ...

  2. eclipse创建一个文件夹

    如何给eclipse创建一个文件夹,便于项目的管理:有时我们的eclipse中会有很多项目的,有的是公司的如Project1,Project2,Project3....还有的呢, 也可能是自己平时做的 ...

  3. C# 将文件夹中文件复制到另一个文件夹

    p{ text-align:center; } blockquote > p > span{ text-align:center; font-size: 18px; color: #ff0 ...

  4. Python实践练习:将一个文件夹备份到一个 ZIP 文件

    题目 项目要求:假定你正在做一个项目,它的文件保存在 C:\AlsPythonBook 文件夹中.你担心工作会丢失, 所以希望为整个文件夹创建一个 ZIP 文件, 作为"快照" . ...

  5. flume监控一个linux指定的一个文件夹的文件信息

    1.编辑一个配置文件 flume-app.conf  拷贝至fulme的安装目录的conf下 # The configuration file needs to define the sources, ...

  6. python移动多个子文件中的文件到一个文件夹

    import os import os.path import shutil def listDir(dirTemp): if None == dirTemp: return global nameL ...

  7. MFC 中 删除一个非空文件夹

    MFC中提供了删除文件夹的一个封装函数 RemoveDirectory(LPCTSTR lpPathName),我们只要把要删除的文件夹的路径传进去就可以删除了,貌似一切如此简单.我象征性的建立一个文 ...

  8. C#文件和文件夹输入输出流代码

    1.建立一个文本文件 public class FileClass { public static void Main() { WriteToFile(); } static void WriteTo ...

  9. C# 添加,修改,删除文件夹/文件集合

    C#追加文件 StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt"); sw ...

随机推荐

  1. python-----运算符及while循环

    一.运算符 计算机可以进行的运算有很多种,不只是加减乘除,它和我们人脑一样,也可以做很多运算. 种类:算术运算,比较运算,逻辑运算,赋值运算,成员运算,身份运算,位运算,今天我们先了解前四个. 算术运 ...

  2. 将本地sql文件导入到mysql中

    cmd命令操作:先创建一个同名数据库,然后通过source导入sql文件 1.启动mysql 2.mysql -uroot -p 输入密码运行mysql 3.创建一个同名数据库 create data ...

  3. js 移动端识别手机号码

    需求: 在移动端一个页面内多处有数字显示,其中希望能够自动识别我所要求的那个手机号码,点击可以拨打 探索: 首先想到的是头部的meta标签<meta name="format-dete ...

  4. jsp 使用Common-FileUpload组件文件上传及限制上传类型

    1.将commons-fileupload-1.3.3.jar复制到Web应用的lib文件夹下,在WebRoot目录下创建limit.jsp页面,在该页面中添加一个文件域的表单,设置类型为    mu ...

  5. JSP慕课网之application、page、pageContext、config、exception

    接下来使用getSession().forward().include()方法. 跳转的include.jsp页面:

  6. 一只菜鸟的瞎J8封装系列的目录

    因为这是一个系列...也就是我们所说的依赖关系.后面很多方法都是基于我前面封装的工具来进行的,所以我列一个目录供大家参考... 一只菜鸟的瞎J8封装系列  一.手把手封装数据层之DButil数据库连接 ...

  7. Android项目实战(三十四):蓝牙4.0 BLE 多设备连接

    最近项目有个需求,手机设备连接多个蓝牙4.0 设备 并获取这些设备的数据. 查询了很多资料终于实现,现进行总结. ------------------------------------------- ...

  8. 开源分享 Unity3d客户端与C#分布式服务端游戏框架

    很久之前,在博客园写了一篇文章,<分布式网游server的一些想法语言和平台的选择>,当时就有了用C#做网游服务端的想法.写了个Unity3d客户端分布式服务端框架,最近发布了1.0版本, ...

  9. Grails笔记四:Groovy特性小结

    在学习Grails的时候与Groovy打交道不可避免,虽然不必太深刻,但多知道一些特性也是很有帮助的~ 1.相除后获取整数 使用intdiv()方法可以获得整数,注意点是这个方法只适用两个整数相除,浮 ...

  10. Centos 6启动流程详解

    author:JevonWei 版权声明:原创作品 Centos6 启动流程 POST开机自检 当按下电源键后,会启动ROM芯片中的CMOS程序检查CPU.内存等硬件设备是否正常运行,CMOS中的程序 ...