变量调节器:<{$a|变量调节器}>

了解更多可以查询smarty手册

主要修改此页面的信息来了解变量调节器:main.php/main.html(0603)

1.利用给定的变量调节器

capitalize 首字母大写

php页面:$smarty->assign("ceshi","hello world");

html页面:<div><{$ceshi|capitalize}></div>

运行后:Hello World

truncate截取字符串(有参数),10代表截取的长度, . 是第三个参数,代表剩余的内容 

 <td><{$v[1]|truncate:10:"..."}></td>    也可以用:<td><{$v[1]|truncate:10}></td>(默认是...)

运行后:                                                    原图:

           

2. 自己写的变量调节器

在lib/plugins中新建文件,命名方式是固定的:modifier.变量调节器名称.php

 2.1 改变答案的颜色

新建文件:modifoer.fontcolor.php

 <?php
//参数:第一个是默认的字符串$str,必须写
function smarty_modifier_fontcolor($str,$color="green")
{
return "<span style='color:{$color}'>$str</span>";
}

在前端调用方法main.html:    <td><{$v[2]|fontcolor:red}></td>

          

2.2 组合使用变量调节器:

在前端调用方法main.html:  <td><{$v[1]|truncate:10:"..."|fontcolor}></td>

2.3 显示所属科目的名称

新建文件:modifoer.kmname.php

 <?php
function smarty_modifier_kmname($str)
{
$conn=new MySQLi("localhost","root","","mydb");
$sql="select name from kemu where code = '{$str}'";
$result=$conn->Query($sql);
$attr=$result->fetch_row();
return $attr[0];
}

在前端调用方法main.html:    <td><{$v[3]|kmname}></td>

        

2.4 显示难度的名称

新建文件:modifoer.nandu.php

 <?php
function smarty_modifier_nandu($str)
{
if($str==0)
{
return "简单";
}
else if($str==1)
{
return "适中";
}
else
{
return "困难";
}
}

在前端调用方法main.html:   <td><{$v[4]|nandu}></td>

      

2.5 显示类型的名称

新建文件:modifoer.type.php

 <?php
function smarty_modifier_type($str)
{
if($str==0)
{
return "判断";
}
else if($str==1)
{
return "单选";
}
else
{
return "多选";
}
}

在前端调用方法main.html:    <td><{$v[5]|type}></td>

        

main.html 中全部修改内容:

<{foreach $shuju as $v}>
<tr>
<!--truncate截取字符串(有参数),10代表截取的长度,.是第三个参数,代表剩余的内容 -->
<td><{$v[1]|truncate:10:"..."|fontcolor}></td>
<td><{$v[2]|fontcolor:red}></td>
<td><{$v[3]|kmname}></td>
<td><{$v[4]|nandu}></td>
<td><{$v[5]|type}></td>
<td><a href="delete.php?code=<{$v[0]}>">删除</a>
<a href="update.php?code=<{$v[0]}>">修改</a>
</td>
</tr>
<{/foreach}>

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>主页</title>
</head> <body>
<h1>主页面</h1>
<table width="70%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>题目名称</td>
<td>答案</td>
<td>所属科目</td>
<td>难度</td>
<td>类型</td>
<td>操作</td>
</tr> <{foreach $shuju as $v}>
<tr>
<!--truncate截取字符串(有参数),10代表截取的长度,.是第三个参数,代表剩余的内容 -->
<td><{$v[1]|truncate:10:"..."|fontcolor}></td>
<td><{$v[2]|fontcolor:red}></td>
<td><{$v[3]|kmname}></td>
<td><{$v[4]|nandu}></td>
<td><{$v[5]|type}></td>
<td><a href="delete.php?code=<{$v[0]}>">删除</a>
<a href="update.php?code=<{$v[0]}>">修改</a>
</td>
</tr>
<{/foreach}>
</table><br /> <a href="add.php">添加数据</a><br /> </body>
</html>

smarty 变量调节器的更多相关文章

  1. smarty变量调节器与函数

    smarty自带了一些变量调节器与内置函数,都在libs/plugins目录下,变量调节器以modifier开头,函数以function开头,而且我们可以自定义变量调节器与函数,熟练运用之后会极大地提 ...

  2. 6月5 Smarty变量调节器

    变量调节器:<{$a|变量调节器}> 主要修改此页面的信息来了解变量调节器:test0605/main.php和模板文件:main0605.html 1.利用给定的变量调节器 capita ...

  3. smarty变量调节器

    smarty中变量调解器的作用:在模板中需要对PHP分配过来的变量在输出之前,对变量进行处理 注册变量调解器方式:$smarty->registerPlugin("modifier&q ...

  4. smarty变量调节器案例

    要求: 如下图,有内容的每一行,当鼠标放上去显示灰色区域,当鼠标离开灰色区域消失

  5. 第八十八天请假 PHP smarty模板 变量调节器,方法和块函数基本书写格式

    变量调节器 : 文件命名格式(modifier.名称.php)  前端调用方式<{变量|名称:参数:参数……}>可组合使用,用|隔开 <?php /* 命名格式 smarty_mod ...

  6. Smarty模板变量调节器

    Smarty模板变量调节器用法 在smarty里面,怎么修饰文本和变量呢?当然,你可以通过php函数处理文本,然后再通过assign()方法分配到模板,其实smarty提供了变量调节器能够很容易的处理 ...

  7. smarty 模板几个例子(变量调节器)

    一.assign和display方法的使用以及几个变量调节器 header("content-type:text/html;charset=utf-8");//加载Smarty引擎 ...

  8. smarty学习——变量调节器(过滤器)

    变量调节器用于变量,自定义函数和字符串. 请使用 | 符号和调节器名称应用调节器.变量调节器由赋予的参数值决定其行为.参数由:符号分开. 比如进行大写转换的: upper demo: <br&g ...

  9. Smarty 变量使用

    Smarty的标签都是使用定界符括起来. 默认定界符是{ 和 }, 但定界符可以被改变. 比如说在本手册,我们会假定你在使用默认的定界符. 在Smarty看来,任何在定界符之外的内容,都是静态的,或者 ...

随机推荐

  1. SDUT2484 算术表达式的转换(表达式树)

    题目链接. 分析: 转换成表达式树,然后先序.中序.后序遍历. AC代码如下: #include <stdio.h> #include <string.h> #define m ...

  2. Floyd 算法 打印路径模板

    #include <iostream> #include <cstdlib> #include <cstdio> #include <algorithm> ...

  3. java数组并集/交集/差集(补集)

    1.说明 使用java容器类的性质选择容器 2.实现 package com.wish.datastrustudy; import java.util.HashSet; import java.uti ...

  4. C#编译时出现“不安全代码只会在使用 /unsafe 编译的情况下出现”错误的解决

    原因是:在编译的代码里面有不安全类型unsafe方法或类!解决方法:将项目属性页中生成下的“允许不安全代码”复选框打上对勾即可,方法如下:项目属性对话框->生成->允许不安全代码块 选中即 ...

  5. Wii硬盘游戏管理

    简介 wuyou是我心目中的Wii硬盘游戏管理神器,没有之一. wuyou不仅仅是一个游戏管理软件,它最亮点的地方在于集成了“游戏文件格式的转换功能”,电玩巴士上如是说: 用Wii主机来把游戏复制到硬 ...

  6. PCRE

    http://blog.sina.com.cn/s/blog_6a1837e901010ckv.html http://hubeihuyanwei.blog.163.com/blog/static/2 ...

  7. Hat’s Words hdu-1247

    就是查找这个单词能不能有两个单词组成,简单的字典树题目 ////////////////////////////////////////////////////////////// #include& ...

  8. 一种用单片机AD采样方式来检测交流市电电压的方法

    下面介绍一种用单片机AD采样的方式检测市电电压的方法  要检测交流市电的电压,通常有两种方法 一.通过频繁的采样后再求平均值来获得实际电压值 二.通过采样交流市电的峰值,再通过算法得出实际电压值 这里 ...

  9. Sql 行转列、列转行及分页

    说明:本实例是以 SQL Server 2005 为运行环境的. 准备工作:创建一个名为 DB 的数据库(CREATE DATABASE DB). 一.T-SQL 行转列 1.创建如下表 CREATE ...

  10. js的深拷贝和浅拷贝

    一.数组的深浅拷贝 在使用JavaScript对数组进行操作的时候,我们经常需要将数组进行备份,事实证明如果只是简单的将它赋予其他变量,那么我们只要更改其中的任何一个,然后其他的也会跟着改变,这就导致 ...