6月5 Smarty变量调节器
变量调节器:<{$a|变量调节器}>
主要修改此页面的信息来了解变量调节器:test0605/main.php和模板文件:main0605.html

1.利用给定的变量调节器
capitalize[首字符大写]
php代码:$smarty->assign("ceshi","hello world");
html代码:<div><{$ceshi|capitalize}></div>
运行后的结果是:Hello World
truncate[截取字符串]含有参数(截取的长度,替代的字符)
书写规则:{$articleTitle|truncate:30:"---"}
html代码: <td><{$v[1]|truncate:10:"---"}></td> 或 <td><{$v[1]|truncate:10}></td>(默认是...)
显示效果: 原图:

2.根据要求自己写的变量调节器
是根据根目录下libs里面的plugins(插件),变量调节器的命名方式很特殊:modifier.变量调节器名称.php
但是自己的插件是在www/Smarty0603/plugins中书新建的,特别要注意命名方式
2.1 改变字体的颜色
在以上目录下新建:modifier.fontcolor.php
<?php
function smarty_modifier_fontcolor($str,$color='red')//参数str
{
return "<span style='color:{$color}'>$str</span>";
}
前段html代码:<td><{$v[2]|fontcolor}></td> (默认是红色)
显示效果: 之前效果:

2.2 变量调节器的组合使用
前段html代码: <td><{$v[1]|truncate:10:"***"|fontcolor:green}></td>
页面显示效果 使用之前:

2.3 变量调节器显示所属科目
在以上目录下新建:modifier.kmname.php
<?php
function smarty_modifier_kmname($str)
{
$db = new MySQLi("localhost","root","","mydb");
$sql = "select name from kemu where code = '{$str}'";
$result = $db->query($sql);
$attr = $result->fetch_row();
//var_dump($attr);
return $attr[0]; }
前段html代码: <td><{$v[3]|kmname}></td>
页面显示效果: 之前的效果:

2.4 变量调节器显示难度(所有表都是查询数据库的)
在以上目录下新建:modifier.nandu.php
<?php
function smarty_modifier_nandu($str)
{
$db = new MySQLi("localhost","root","","mydb");
$sql = "select nandu from nandu where code = '{$str}'";
$result = $db->query($sql);
$attr = $result->fetch_row(); return $attr[0];
}
前段html代码: <td><{$v[4]|nandu}></td>
页面显示效果: 之前的效果:

2.5 变量调节器显示类型
在以上目录下新建:modifier.type.php
<?php
function smarty_modifier_type($str)
{
$db = new MySQLi("localhost","root","","mydb");
$sql = "select type from leixing where code = '{$str}'";
$result = $db->query($sql);
$attr = $result->fetch_row(); return $attr[0];
}
前段html代码: <td><{$v[5]|type}></td>
页面显示效果: 之前的效果:

所有的前端html代码如下:
<!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> <div><{$ceshi|capitalize}></div>
<br /> <table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td>题目名称</td>
<td>答案</td>
<td>科目</td>
<td>难度</td>
<td>类型</td>
<td>操作</td>
</tr> <{foreach $shuju as $v}>
<tr>
<td><{$v[1]|truncate:10:"***"|fontcolor:green}></td>
<td><{$v[2]|fontcolor}></td>
<td><{$v[3]|kmname}></td>
<td><{$v[4]|nandu}></td>
<td><{$v[5]|type}></td>
<td><a href="shanchu.php?code=<{$v[0]}>">删除</a> <a href="xiugai.php?code=<{$v[0]}>">修改</a></td>
</tr>
<{/foreach}>
</table>
<br> </body>
</html>
6月5 Smarty变量调节器的更多相关文章
- smarty 变量调节器
变量调节器:<{$a|变量调节器}> 了解更多可以查询smarty手册 主要修改此页面的信息来了解变量调节器:main.php/main.html(0603) 1.利用给定的变量调节器 c ...
- smarty变量调节器与函数
smarty自带了一些变量调节器与内置函数,都在libs/plugins目录下,变量调节器以modifier开头,函数以function开头,而且我们可以自定义变量调节器与函数,熟练运用之后会极大地提 ...
- smarty变量调节器
smarty中变量调解器的作用:在模板中需要对PHP分配过来的变量在输出之前,对变量进行处理 注册变量调解器方式:$smarty->registerPlugin("modifier&q ...
- smarty变量调节器案例
要求: 如下图,有内容的每一行,当鼠标放上去显示灰色区域,当鼠标离开灰色区域消失
- 第八十八天请假 PHP smarty模板 变量调节器,方法和块函数基本书写格式
变量调节器 : 文件命名格式(modifier.名称.php) 前端调用方式<{变量|名称:参数:参数……}>可组合使用,用|隔开 <?php /* 命名格式 smarty_mod ...
- Smarty模板变量调节器
Smarty模板变量调节器用法 在smarty里面,怎么修饰文本和变量呢?当然,你可以通过php函数处理文本,然后再通过assign()方法分配到模板,其实smarty提供了变量调节器能够很容易的处理 ...
- smarty 模板几个例子(变量调节器)
一.assign和display方法的使用以及几个变量调节器 header("content-type:text/html;charset=utf-8");//加载Smarty引擎 ...
- smarty学习——变量调节器(过滤器)
变量调节器用于变量,自定义函数和字符串. 请使用 | 符号和调节器名称应用调节器.变量调节器由赋予的参数值决定其行为.参数由:符号分开. 比如进行大写转换的: upper demo: <br&g ...
- Smarty 变量使用
Smarty的标签都是使用定界符括起来. 默认定界符是{ 和 }, 但定界符可以被改变. 比如说在本手册,我们会假定你在使用默认的定界符. 在Smarty看来,任何在定界符之外的内容,都是静态的,或者 ...
随机推荐
- centos7重新调整分区大小
As others have pointed out, XFS filesystem cannot be shrunk. So your best bet is to backup /home, re ...
- html 之 padding,margin
margin:对象挤压外界 padding:对象挤压自身 例如: td使用margin 对table而言没有任何效果,但使用padding是对table内部的挤压,若是table空间不够,则会扩大ta ...
- Ubuntu fcitx CPU占用率很高解决方法
在Ubuntu中,有时候电脑的风扇突然狂装,用 pidstat -u 5 1 命令查看后台应用的资源占用情况,发现fcitx的占用率接近百分之百. 原因是搜狗云输入的问题,关闭后,在用kill命令干掉 ...
- $mount方法是用来挂载我们的Vue.extend扩展的
html <body> <div id="app"> <diy></diy> </div> </body> ...
- 关于Django的Ajax操作
一 什么是Ajax AJAX(Asynchronous Javascript And XML)翻译成中文就是"异步Javascript和XML".即使用Javascript语言与服 ...
- FICO年终完全手册
FICO年终完全手册 一:系统增加配置部分 1,FBN1增加凭证号码范围,OBH2维护会计凭证号码到新的会计年度 2,KS13检查成本中心的有效期 3,KA23检查成本要素的有效期 4,KL03检查作 ...
- Win10远程桌面可能是由于CredSSP加密Oracle修正
win10更新1083之后,远程桌面就会连接失败,显示如下: 根据微软官方的说法是更改了安全策略: https://support.microsoft.com/zh-cn/help/4093492/c ...
- ECharts 使用总结
1.去掉Echarts 图标上边框和右边框 option = { title: { text: '未来一周气温变化', subtext: '纯属虚构' }, grid: { show: 'true', ...
- WebBrowser获取完整COOKIE
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool ...
- 为DataGridView增加鼠标滚轮功能
#region 鼠标滚动 [System.Runtime.InteropServices.DllImport("user32.dll", EntryPoint = "Wi ...