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 ,如需转载请自行联系原作者

相关文章
|
网络协议 网络架构 数据格式
网络初识:局域网广域网&网络通信基础
网络初识:局域网广域网&网络通信基础
1157 5
|
存储 安全 API
oss服务器端加密(Server-Side Encryption Configuration)
阿里云OSS提供服务器端加密(SSE),确保静态数据安全。支持SSE-KMS,使用KMS托管CMK加密。数据上传时自动加密,下载时自动解密。用户可设置Bucket默认加密或在上传时指定加密选项。适用于高度保护数据场景,如敏感个人信息和企业关键信息。兼容多种部署形态,特定特性地域可用。此功能简化了加密处理,增强了云端数据安全性。
777 1
|
3月前
|
人工智能 缓存 自然语言处理
LLM多跳推理深度测试:四项指标精准定位模型的推理极限
本文探讨大模型在多步推理中的表现,通过四项压力测试对比Llama 3.2与Qwen 3的逻辑极限。分析揭示:Llama 3.2依赖预训练内化的直觉推理,稳定高效;Qwen 3则靠“自我对话”推进复杂任务,虽具思考深度但易受算术错误影响,深层推理易崩溃。两者适用于不同场景——速度优先选Llama,探索性任务可试Qwen。
345 12
LLM多跳推理深度测试:四项指标精准定位模型的推理极限
|
10月前
|
存储 弹性计算 运维
阿里云经济型e与通用算力型u1实例有何不同?性能、场景、价格对比与选型参考
在我们选择阿里云服务器实例规格时,经济型e实例和通用算力型u1实例因高性价比与广泛的适用性,深受个人开发者以及中小企业的喜爱。这两款实例不仅在价格上极具竞争力,而且在性能、稳定性以及适用场景方面也各有长处。它们之间究竟存在怎样的区别?在性能表现和适用场景上又有哪些不同?我们又该如何做出选择呢?本文会详细解读这两款实例的性能特点、适用场景、价格优势,以供大家参考。
|
4月前
|
安全 小程序 JavaScript
OAuth2.0四种授权模式
OAuth2四种授权模式简介:授权码模式最安全,适用于第三方登录;简化模式无授权码,token直接返回,适合无后端场景;密码模式需用户共享账号信息,仅限高度信任服务;客户端模式为服务间调用,无需用户参与。
|
6月前
|
数据采集 弹性计算 供应链
阿里云服务器ECS抢占式实例是什么意思?一文看懂
阿里云ECS抢占式实例(原竞价实例)价格优惠,最高可省90%,按小时计费,适合无状态、容错性强的业务,如大数据分析、测试等。但存在被中断回收风险,数据可能丢失,不适用于数据库等有状态应用。建议用户合理出价并做好备份。
|
12月前
|
传感器 监控 网络协议
OSI 物理层详解
本文介绍了多种传输介质及其特性,包括双绞线、光纤、同轴电缆和无线介质。双绞线成本低、易于安装,适合短距离传输;光纤具有大带宽、远距离传输和高安全性,适用于数据中心互联和广域网;同轴电缆抗干扰能力强,但安装复杂;无线介质通过电磁波传输,2.4GHz覆盖广但速度慢,5GHz速度快但穿墙能力弱。此外,文章还提及了曼彻斯特编码的特点与应用,以及传输速率单位bps的定义与换算方法,为网络规划提供了理论依据。
504 5
|
机器学习/深度学习 人工智能 计算机视觉
AIGC基础模型——Vision Transformer (ViT)
【1月更文挑战第12天】AIGC基础模型——Vision Transformer (ViT)
828 6
AIGC基础模型——Vision Transformer (ViT)
|
存储 机器学习/深度学习 编解码
app版本更新的五种实现方式
app版本更新的五种实现方式
1959 2
|
前端开发 开发工具 图形学
【你问我答】unity实现一个刮刮乐效果
【你问我答】unity实现一个刮刮乐效果
662 0