smarty教程系列2--section1

简介:
第二课 smarty基本语法(1)
好了有了上一节课的安装,这节课我们看看smarty的基本语法
我们知道smarty是为了把php和美工制作的模板部分尽量做到分离,这样程序做程序时可以不必等到美工的页面出来之后在做前台这部分程序,
smarty起到了一个中间桥梁的作用,这样需要我们的程序员和美工都要了解smarty的语法,好了我们先看看模板设计者部分(也就是美工这一部分),
我们简单看一个模板test.tpl:

<html>
<head><title><{$title}></title></head>
<body>
我的名字是<{$name}>,我来自<{$city}>.
</body>
</html>


test.php关键部分部分:

$title= "学习smarty基本语法部分";
$name= "xcf007";
$city= "威海";

$tpl->assign( "title",$title);
$tpl->assign( "name",$name);
$tpl->assign( "city",$city);


这里就是简单把数据赋给模板变量.


smarty是编译模板,也就是说它首先根据模板去生成一个php文件,我们运行后会发现在template_c目录生成一个类似
%%45^45E^45E480CD%%test.tpl.php这样名字的文件,这就是smarty根据模板编译生成的一个文件。

其实它就是扫描一下tpl文件,定界符外的直接输出到那个php临时文件里,而定界符内的部分,它会处理
比如 我的名字是<{$name}>,我来自<{$city}>.他就会把<{$name}>替换成<?php echo $name;?>类似这个样子,当然实际中他是$this->_tpl_vars['Name'];我们为了简单起见。


很多php程序员不用smarty时,有的就用include方式。
比如

test.php:

$title= "学习smarty基本语法部分";
$name= "xcf007";
$city= "威海";

include 'index.tpl';

而index.tpl变成了:

<html>
<head><title><?php echo $title;?></title></head>
<body>
我的名字是<?php echo $name;?>,我来自<?php echo $city;?>.
</body>
</html>

好了,这个include方式,大家做小东西不妨试试。

了解smarty的机制,看看语法:
1.smarty注释
看看模板任意如何做注释,因为可能有时候做模板时需要对模板变量做一下注释,
注意不是html注释,那个会出现在将来静态页面源代码中,我们这个是对模板注解的,只想出现在模板文件里。
好了是 定界符带个星号,如<{* 这里是模板注释 *}>

这个注释模板编译时会忽略,不会出现在那个临时的php文件里面。

待续...






 本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/156835 ,如需转载请自行联系原作者

相关文章
|
Java
BIO,NIO,AIO 有什么区别?
BIO,NIO,AIO 有什么区别? BIO:Block IO 同步阻塞式 IO,就是我们平常使用的传统 IO,它的特点是模式简单使用方便,并发处理能力低。
265 0
|
编解码 算法 文件存储
浅谈动图文件格式 - GIF
介绍动图的文件格式,及其优劣
3232 0
浅谈动图文件格式 - GIF
|
9月前
|
存储 弹性计算 运维
阿里云经济型e与通用算力型u1实例有何不同?性能、场景、价格对比与选型参考
在我们选择阿里云服务器实例规格时,经济型e实例和通用算力型u1实例因高性价比与广泛的适用性,深受个人开发者以及中小企业的喜爱。这两款实例不仅在价格上极具竞争力,而且在性能、稳定性以及适用场景方面也各有长处。它们之间究竟存在怎样的区别?在性能表现和适用场景上又有哪些不同?我们又该如何做出选择呢?本文会详细解读这两款实例的性能特点、适用场景、价格优势,以供大家参考。
|
7月前
|
C++ Windows
0xc0000142修复步骤图解
遇到0xc0000142错误时,可以按照以下步骤进行修复,并附上图解说明: 修改系统区域语言‌
|
11月前
|
传感器 监控 网络协议
OSI 物理层详解
本文介绍了多种传输介质及其特性,包括双绞线、光纤、同轴电缆和无线介质。双绞线成本低、易于安装,适合短距离传输;光纤具有大带宽、远距离传输和高安全性,适用于数据中心互联和广域网;同轴电缆抗干扰能力强,但安装复杂;无线介质通过电磁波传输,2.4GHz覆盖广但速度慢,5GHz速度快但穿墙能力弱。此外,文章还提及了曼彻斯特编码的特点与应用,以及传输速率单位bps的定义与换算方法,为网络规划提供了理论依据。
472 5
|
安全 虚拟化 Windows
Windows Server 2016 中文版、英文版下载 (2025 年 2 月更新)
Windows Server 2016 中文版、英文版下载 (2025 年 2 月更新)
463 17
Windows Server 2016 中文版、英文版下载 (2025 年 2 月更新)
|
存储 机器学习/深度学习 编解码
app版本更新的五种实现方式
app版本更新的五种实现方式
1829 2
|
网络协议 应用服务中间件 网络安全
阿里云轻量应用服务器的使用限制
阿里云轻量应用服务器的使用限制
当用户需求不详细时,如何有效应对
当用户需求不详细时,如何有效应对
1017 0
|
前端开发 JavaScript API
网页开发者必看!5种JS跳转页面技巧,提升用户交互体验
欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚开始学习前端的读者们打造的。无论你是初学者还是有一些基础的开发者,我们都会在这里为你提供一个系统而又亲切的学习平台。我们以问答形式更新,为大家呈现精选的前端知识点和最佳实践。通过深入浅出的解释概念,并提供实际案例和练习,让你逐步建立起一个扎实的基础。无论是HTML、CSS、JavaScript还是最新的前端框架和工具,我们都将为你提供丰富的内容和实用技巧,帮助你更好地理解并运用前端开发中的各种技术。

热门文章

最新文章