smarty 模板几个例子(变量调节器)
一、assign和display方法的使用以及几个变量调节器
header("content-type:text/html;charset=utf-8");
//加载Smarty引擎文件
include "./smarty/Smarty.class.php";
//连接数据库,提取相关数据
$title = "Smarty 模板引擎";
$content = "Smarty 模板引擎Smarty 模板引擎Smarty 模板引擎";
//实例化Smarty
$smarty = new Smarty;
//通过assign方法给模板文件分配变量
$smarty->assign('title',$title);
$smarty->assign('content',$content);
//给模板分配一个数组变量使用
$person = array('自来也',33);
$smarty->assign('person',$person);
//给模板分配一个对象变量使用
class Person{
public $name;
public $age;
}
$per = new Person;
$per->name = '辉夜';
$per->age =555;
$smarty->assign('per',$per);
/** 变量调节器
*所谓的变量调节器其实就是变量修饰器,就是对PHP分配过来的变量加以“修饰”,也就是进行相关的格式化操作!然后再进行输出!
*不同的调节器有不同的名字,可以完成不同的功能,并且不同的调节器都有自己不同的参数!
{$变量名|调节器名:参数1:参数2:参数3……}
*
*如date_format
*作用:对时间戳进行格式化!参数有很多,但是主要的参数还是代表年月日时分秒的参数!
*{$变量名(时间戳)|date_format:‘%Y-%m-%d %H:%M:%S’}
*/
$time = time();
$smarty->assign('time',$time);
//去掉js和html等相关的标签!strip_tags
$str = '<b>六道</b>';
$smarty->assign('str',$str);
/**
*nl2br
*{$变量名| nl2br}
*作用:将字符串中的\n转换为<br />签,从而在显示的时候真正的实现换行的效果!
*/
$str1 = "广州市\n天河区";
$smarty->assign('str1',$str1);
/**truncate
*{$变量名|truncate:字符串长度:’…’}
*作用:只截取前多少多少的字符,后面用…代替!
*/
$str2 = "广州市天河区广州市天河区广州市天河区广州市天河区";
$smarty->assign('str2',$str2);
//通过display 方法替换模板中的标记并输出
$smarty->display('./templates/index1.tpl');
index1.tpl文件
<html>
<head>
<title>测试</title>
</head>
<body>
{*这里是注释内容,不会显示在浏览器端*}
{$title}<hr />
{$content}<hr />
{*模板标记是一个数组*}
姓名:{$person[0]}<br />
年龄:{$person[1]}<hr />
{*模板标记是一个对象*}
姓名:{$per->name}<br />
年龄:{$per->age}<br />
{*变量调节器 date_format 格式如下*}
变量调节器 date_format:{$time|date_format:'%Y-%m-%d %H:%M:%S'}<br />
{*变量调节器 strip_tags 格式如下*}
{$str|strip_tags}<br />
{*变量调节器 nl2br 格式如下*}
{$str1|nl2br}<br />
{*变量调节器 truncate 格式如下*}
{$str2|truncate:10:'...'}<br />
</body>
</html>
二、foreach遍历数组测试以及if elseif 例子
header("content-type:text/html;charset=utf-8");
//加载Smarty引擎文件
include "./smarty/Smarty.class.php";
//实例化Smarty
$smarty = new Smarty;
$arr = array('name'=>'辉夜',
'age'=>'333',
'home'=>'月亮',
'son'=>'六道'
);
$smarty->assign('arr',$arr);
$day = 4;
$smarty->assign('day',$day);
//通过display 方法替换模板中的标记并输出
$smarty->display('./templates/foreach.tpl');
foreach.tpl 文件
<html>
<head>
<title>foreach遍历数组测试</title>
</head>
<body>
{*
{foreach from=数组名 item=元素的值的名 key=元素的键名 name=名称}
{foreachelse}
{/foreach}
主要功能:用于数组元素的遍历!
from:要遍历哪个数组元素(必选项)
item:系统每次将遍历的结果放入到变量item中(必选项)
key:键名
name:给本次foreach遍历起一个名字
*}
{foreach from=$arr item='value' key='key' name='name1'}
{$key}=>{$value}<br />
{/foreach}
{if $day==1}
星期1
{elseif $day==2}
星期2
{elseif $day==3}
星期3
{elseif $day==4}
星期4
{elseif $day==5}
星期5
{else}
周末
{/if}
</body>
</html>
smarty 模板几个例子(变量调节器)的更多相关文章
- smarty 模板几个例子
一.assign和display方法的使用以及几个变量调节器 header("content-type:text/html;charset=utf-8");//加载Smarty引擎 ...
- 12月15日smarty模板基本语法
smarty基本语法: 1.注释:<{* this is a comment *}>,注意左右分隔符的写法,要和自己定义的一致. <{* I am a Smarty comment, ...
- smarty模板基本语法
smarty基本语法: 1.注释:<{* this is a comment *}>,注意左右分隔符的写法,要和自己定义的一致. <{* I am a Smarty comment, ...
- smarty变量调节器与函数
smarty自带了一些变量调节器与内置函数,都在libs/plugins目录下,变量调节器以modifier开头,函数以function开头,而且我们可以自定义变量调节器与函数,熟练运用之后会极大地提 ...
- Smarty 模板引擎简介
前言 Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一.它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑 ...
- Smarty模板快速入门
文件下载 1.下载地址:http://www.smarty.net/ 2.我下载的版本是3.1.27 ,将下载的文件smarty-3.1.27.zip解压出来,然后将libs文件夹的所有文件复制到你的 ...
- 第八十八天请假 PHP smarty模板 变量调节器,方法和块函数基本书写格式
变量调节器 : 文件命名格式(modifier.名称.php) 前端调用方式<{变量|名称:参数:参数……}>可组合使用,用|隔开 <?php /* 命名格式 smarty_mod ...
- Smarty模板变量调节器
Smarty模板变量调节器用法 在smarty里面,怎么修饰文本和变量呢?当然,你可以通过php函数处理文本,然后再通过assign()方法分配到模板,其实smarty提供了变量调节器能够很容易的处理 ...
- SMARTY模板中如何使用get,post,request,cookies,session,server变量
{$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量.例如,直接在模板中访问页面请求变量.获取访问模板时的时间戳.直接访问PHP中 ...
随机推荐
- Image Processing and Analysis_15_Image Registration:A survey of medical image registration——1998
此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...
- 使用vs编写arduino项目
说实话,arduino官方自带的编辑器有时候用的真不爽.所以直接使用vs开发arduino项目,用起来真爽,一直使用一直爽. 不多废话,直接上图,三部曲结束,搞定,收工. 我用的是vs2015版本的. ...
- centos7下安装zookeeper&zookeeper集群的搭建
一.centos7下安装zookeeper 1.zookeeper 下载地址 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 2.安装步骤 ...
- JSONPlaceholder - 免费的在线REST服务(提供测试用的HTTP请求假数据)
http://www.hangge.com/blog/cache/detail_2020.html 一.GET 方式请求数据1,获取文章(贴子)数据 二.POST 方式请求数据1,功能说明我们可以将数 ...
- Reverse链表
之前学习了关于reverse数组相关的东东(http://www.cnblogs.com/webor2006/p/6727419.html),这次再来对链表进行reverse一下,在面试中也很容易被问 ...
- springboot中访问html页面
springboot中如果想访问html页面,不每访问一个页面就写一个Controller,可以统一写一个公共的controller方法 代码: (1)引入hutool工具依赖 <!-- hut ...
- L1与L2正则化
目录 过拟合 结构风险最小化原理 正则化 L2正则化 L1正则化 L1与L2正则化 参考链接 过拟合 机器学习中,如果参数过多.模型过于复杂,容易造成过拟合. 结构风险最小化原理 在经验风险最小化(训 ...
- Java类的调用(实现数组排序和遍历输出)
两个类文件: Test1.java /** *同一个src下的两个类,主类在这里,调用另一个文件里的Public类 */ import java.lang.*; public class Test1 ...
- Vue入门——v-if和v-show
v-if 特点:每次都会重新删除或创元素 有较高的切换性能消耗 v-show 特点:每次不会重新进行DOM的删除和创建操作,只是切换了元素的display:none样式 有较高的初始渲染消耗
- Hibernate初探之单表映射——使用Junit进行测试
编写一个Hibernate例子 第四步:使用Junit进行测试 三个常用的注解标签 @Test:测试方法 @Before:初始化方法 @After:释放资源 执行顺序:Before注解标签下的方法 ...