变量调节器:<{$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. #define中 #与##的神奇用法linux学习 (转)

    #define中 #与##的神奇用法linux学习 (转) #define f(a,b) a##b #define d(a) #a #define s(a) d(a) void main( void ...

  2. HDU4666 Hyperspace(曼哈顿)

    题目链接. 分析: 这是多校的一个题,当时没做出来.学长说让用multiset. 用multiset将每一个数的1<<dim个状态全部保存.假设状态 i, 最远曼哈顿距离应当是 max[i ...

  3. BZOJ 1008 [HNOI2008]越狱

    1008: [HNOI2008]越狱 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 5166  Solved: 2242[Submit][Status] ...

  4. (2015年郑州轻工业学院ACM校赛题) G 矩阵

    看这道题的时候就感觉用一点动归思想+暴力 就能过了. #include<stdio.h> #include<iostream> #include<stack> #i ...

  5. Hot to get clicked cell column in DevExpress XtraGrid

    To accomplish this task, use the GridView.RowCellClickevent. Please note that this event will not fi ...

  6. WAD独立安装版USB Loader的下载和安装

    背景知识 我使用Wad Manager来安装WAD版软件,所以需要先在Wii上面把Wad Manager准备好.详情可以参考我写的另外一篇文章<Wad Manager的下载和运行>(链接: ...

  7. Types of AOP

    There are two distinct types of AOP: static and dynamic. The difference between them is really the p ...

  8. css文本超出2行就隐藏并显示省略号

    之前在网上看到过这样的代码,感觉有的时候还是挺有用的,故留个笔记. display:-webkit-box; //将对象作为弹性伸缩盒子模型显示. -webkit-box-orient:vertica ...

  9. css中居中的居中方法

    1:给div设置一个宽度,然后添加margin:0 auto属性 div{ width:200px; margin:0 auto; } 2:居中一个浮动元素 确定容器的宽高 宽500 高 300 的层 ...

  10. Java Web开发常见问题

    一.Tomcat服务器常见启动问题:(1).Java_home环境变量,由于tomcat服务器的bin目录中的一些jar文件必须使用到java类库,所以必须先配置Java_home环境变量.(2).端 ...