主要是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. 如何在GitHub上生成ssh公钥并用NetBeans克隆项目

    一.生成ssh公钥. 1.首先判断本机是否创建了公有密钥: $ ls ~/.ssh 这个命令用于检查是否已经存在 id_rsa.pub 或 id_dsa.pub 文件,如果文件已经存在,下面步骤可省略 ...

  2. jvm系列 (三) ---锁的优化

    锁的优化 目录 jvm系列(一):jvm内存区域与溢出 jvm系列(二):垃圾收集器与内存分配策略 jvm系列(三):锁的优化 我的博客目录 锁的四种状态 从低到高,只能升级不能降级 无锁状态 偏向锁 ...

  3. win下安装Redmine常见错误解决方案

    成长型公司,最近需要项目管理的软件,所以在windows的服务器上搭建了redmine,其中也遇到了两个坑,现记录下来. Redmine是用Ruby开发的基于web的项目管理软件,是用ROR框架开发的 ...

  4. Sublime Text 2安装图解

    Sublime Text 2安装图解.. ---------------- ---------------- ---------------- ---------------- ----------- ...

  5. 阿里云服务器(Windows)如何下载文件

    背景:公司只有我一个技术,在我之前还有一个老技术,属于兼职状态,为了尽快熟悉公司网站及app项目情况,我联系了老技术,请他尽快将代码发给我,他说代码文件过大,问我能不能连上服务器下载.百度了很多,都不 ...

  6. web前端笔记整理一---HTML

    一 HTML标签1 页面及标记 1 HTML 文件结构 拓展名 .html或者.htm <!DOCTYPE html>// 声明 <html> html 主体 <head ...

  7. JAVA基础----持续更新

    1.基本数据类型   - 整数型:byte  short  int  long   默认为int 计算时需要转换    - 浮点型:float  double     默认为double    - 布 ...

  8. winform WebBrowser控件中,cs后台代码执行动态生成的js

    很多文章都是好介绍C# 后台cs和js如何交互,cs调用js方法(js方法必须是页面上存在的,已经定义好的),js调用cs方法, 但如果想用cs里面执行动态生成的js代码,如何实现呢? 思路大致是这样 ...

  9. Microsoft Azure Storage Exployer使用指南

    概述 Microsoft Azure Storage Exployer 是微软官方推荐的一款管理Azure Storage 客户端工具,客户使用完全免费.支持Windows.Mac和Linux.用户使 ...

  10. [js高手之路]this知多少

    this关键字在javascript中的变化非常的灵活,如果用的不好就非常恶心,用的好,程序就非常的优雅,灵活,飘逸.所以掌握this的用法,是每一个前端工程师必知必会的.而且这个也是一些大公司笔试中 ...