Smarty格式化数字为INT数

<?
require("setup.php");
define('PAGETITLE','pagtitle');
function insert_top($lid,$sid)
{
echo "insert function";
}
$smarty=new SmartyRebuild();
$smarty->assign('name','Linux');
$smarty->assign('title','在线有有要有和蔼是是非非要要');
$smarty->assign('english_word','my name x4 is linux');
$smarty->assign('money','344.2223');
$smarty->assign('member',array('fax'=>'010-95888484','email'=>'linux@admin.com',
     'phone'=>array('home'=>'8488484','mobil'=>'5325325325353')));
$tempMember=array();
$tempMember['member']='dsgads';
$tempMember["phone"]["home"]="444333";
$contacts=array();
$contacts[]["fax"]="435454";
$contacts[]["phone"]="223523523";
$contacts[]["fax"]="42532532";
$contacts[]["phone"]="7888888";
$contacts2=array(array('fax'=>'32523','phone'=>'325132532'),array('fax'=>'2313532','phone'=>'325325132523'));
$contacts3=array();
$contacts3[0]="23523";
$contacts4=array();
$contacts4[0][0]="23523";
$contacts4[0][1]="23523";
$contacts3[1]="23523";
$contacts4[1][0]="23523";
$contacts4[1][1]="23523";
$contacts3[2]="23523";
$contacts4[2][0]="23523";
$contacts4[2][1]="23523";
$contacts3[3]="23523";
$contacts4[3][0]="23523";
$contacts4[3][1]="23523";
$smarty->assign('contacts',$contacts);
$smarty->assign('contacts2',$contacts2);
$smarty->assign('contacts3',$contacts3);
$smarty->assign('contacts4',$contacts4);
$smarty->assign('tempmember',$tempMember);
$smarty->display('index.tpl');
?>



smarty code:

     

{config_load file='config.conf'}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
  <TITLE>Smarty学习</TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
</HEAD>

<BODY>
{capture name=banner}{*注释掉中间显示内容*}
{include file="banner.tpl"}
{/capture}
{include file="banner.tpl" title="Smarty学习"}
{$smarty.get.page}<br/>
{$smarty.post.page}<br/>
{$smarty.cookies.name}<br/>
{$smarty.server.SERVER_NAME}<br/>
{$smarty.env.PATH}<br/>
{$smarty.session.id}<br/>
{$smarty.request.username}<br/>
{$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}<br/>
{$smarty.const.PAGETITLE}{*常量*}<br/>
Hello {$name}{*变量*}<br/>
{html_select_date display_days=yes}<br/>
{$member.fax}<br/>
{$member.phone.home}<br/>
{$tempmember.member}<br/>
{$tempmember.phone.home}{*多维数组*}<br/>
{#error_message#}{*配置文件属性*}<br/>
{$name|lower}{*smarty字符串函数*}<br/>
{$name|upper}{*smarty字符串函数*}<br/>
{'now'|date_format:'%Y-%m-%d'}{*smarty日期函数*}<br/>
{$title|truncate:11:"..."}{*截断字符串超长加...*}<br/>
{mailto|lower address="mailto:linux@admin.com%22%7D%7B*mailto邮件*}<br/>
mailto:%7B$tempmember%7C@count}{*数据的总和*}<br/>
{$english_word|capitalize}{*首字母大写*}<br/>
{$english_word|capitalize:true}{*每个单词的首字母大写*}<br/>
{$title|count_characters:true}{*字符串的长度加true字符空格,不加true不计算空格*}<br/>
{$title|cat:'字符串后加入字符'}{*拼接字符串*}<br/>
{$title|count_words}{*计算字符数量*}<br/>
{$title2|default:"dsgadsgds"};{*如果变量不存在就输出默认值*}<br/>
{$english_word|escape:html}{*将字符串中的HTML转换为HTML编码方式*}<br/>
{$english_word|escape:htmlall}{*将字符串中的HTML转换为HTML编码方式*}<br/>
{$english_word|escape:url}{*将字符串中的HTML转换为URL编码方式*}<br/>
{$english_word|escape:quotes}{*将字符串中的HTML转换为HTML编码方式*}<br/>
{$title|indent:100}{*缩进指定宽度*}<br/>
{$title|regex_replace:"/要/":"爱"}{*正则表达式替换字符*}<br/>
{$title|replace:"要":"爱"}{*Replace替换字符*}<br/>
{$english_word|spacify:"||"}{*分隔字符串*}<br/>
{$money|string_format:"%.2f"}{*格式化数字为Float数*}<br/>
{$money|string_format:"%d"}{*格式化数字为INT数*}<br/>
{$english_word|strip:" "}{*替换空格*}<br/>
{$english_word|strip_tags:false}{*替换标签*}<br/>
{$english_word|truncate:10:"..."}{*截取指定长度字符,默认截取80字符长度*}<br/>
{$english_word|wordwrap:10}{*多长后字符串换行,默认换行长度为80*}<br/>
{$english_word|upper|spacify|truncate:30:"..."}{*Smarty支持多个函数的组合,此组合为字符串先大写然后分隔然后截取指定长度*}<br/>
{foreach name=outer item=contact from=$contacts}{*foreach循环数组*}
  {foreach key=key item=item from=$contact}
  {$key}:{$item}<br/>
  {/foreach}
{/foreach}
{foreach name=outer item=contact2 from=$contacts2}
  {foreach key=key item=item from=$contact2}
  {$key}:{$item}<br/>
  {/foreach}
{/foreach}
{include_php file="function.php"}{*包含指定的PHP文件*}
{insert name="top" lid="toplid" sid="topsid"}{*调用insert_top PHP函数,函数参数为lid和sid的值*}
{if 1 eq 1}{*条件判断语句*}
  1=1
{elseif 1 ne 1}
  1!=1
{elseif 1 gt 1}
  1>1
  {elseif 1 lt 1}
  1<1
  {elseif 1 gte 1}
  1>=1
  {elseif 1 lte 1}
  1<=1
  {elseif not 1 eq 1}
  not 1=1
  {elseif (1 mod 1) eq 1}
  <font color="red">1%1=1</font>
  {else}
  你的人品真不好
  {/if}
{ldelim}function insert_top {rdelim} is insert_top {*输出中括号*}
{literal}{*加入一段HTML,脚本代码等*}
<script language="javascript" type="text/css">
<!--
function load()
{
  alert('页面加载....');
}
//-->
</script>
  {/literal}
  {*包含一段PHP语句*}
  {php}
  echo "php代码运行";
  {/php}
  {section name=member loop=$contacts3 show=true}{*while循环 show是否SHOW section中的循环内容*}
   {if $smarty.section.member.first}
  first
{/if}
{if $smarty.section.member.last}
  last
{/if}
current loop rownum:{$smarty.section.member.rownum}<br/>
   current loop iteration:{$smarty.section.member.iteration}<br/>
   index:{$smarty.section.member.index} index_prev:{$contacts3[member.index_prev]} index_next:{$contacts3[member.index_next]} index:{$contacts3[member.index]} member:{$contacts3[member]}
   {section name=memberchild loop=$contacts4[member] max=2}
    memberchild:{$contacts4[member][memberchild]}
   {/section}
   total:{$smarty.section.member.total}{*数据长度或总记录数*}
  {/section}

</BODY>
</HTML>

变量调节器
变量调节器用于变量,自定义函数和字符串.
可以使用'|'符号和调节器名称应用调节器.
变量调节器由赋予的参数值决定其行为.
参数由':'符号分开.
如果你用变量调节器调节数组变量,结果是数组的每个值都被调节.如果你想要调节器调节整个数组,你必须在调节器名字前加上@符号.
例如: {$articleTitle|@count}(这将会在输出 $articleTitle 数组里的数目)

capitalize
将变量里的所有单词首字大写. 参数值boolean型决定带数字的词是否首字大写。默认不大写

count_characters
计算变量值里的字符数.参数值boolean型决定是否计算空格数。默认不计算空格

cat
将cat里的参数值连接到给定的变量后面.默认为空。

count_paragraphs
计算变量里的段落数量

count_sentences
计算变量里句子的数量

count_words
计算变量里的词数

date_format
日期格式

第一个参数控制日期格式.
如果传给date_format的数据是空的,将使用第二个参数作为默认时间

%a - 星期几的简写

%A - 星期几的全写

%b - 月份的简写

%B - 月份的全写

%c - 日期时间06/12/05 11:15:10

%C - 世纪时间

%d - 一个月的第几号(从 01 到 31)

%D - 同 %m/%d/%y

%e - 一个月的第几号,号为单数则前面加一空格 (从 1 到 31)

%g - 世纪

%G - 世纪 [0000,9999]

%h - 同%b

%H - 24小时形式的小时(从00到23)

%I - 12小时形式的小时(从01到 12)

%j - 一年中的第几天(从 001 到 366)

%k - 24小时形式的小时,单数字前面加空格. (从 0 到 23)

%l - 12小时形式的小时,单数字前面加空格.(range 1 to 12)

%m - 月份 (range 01 to 12)

%M - 分

%n - 换行符

%p - 显示早上还是下午`am' 或 `pm'

%r - a.m. 或 p.m.形式的时间

%R - 24小时形式的时间

%S - 秒

%t - tab符号

%T - 同%H:%M:%S

%u - 用 [1,7],表示星期几

%U - 计算是该年的第几个星期,从该年的第一个星期天开始计算

%V - 计算是该年的第几个星期, 从 01 到 53, 第一个星期必须至少有4天在这一年, 星期天作为这个星期的第一天

%w - 用数字的形式表示是星期的第几天, 星期天 为 0

%W - 用数字的形式是该年的第几个星期,从该年的第一个星期一开始计算

%x - 显示日期:月/日/年

%X - 显示时间:小时:分钟:秒

%y - 不包括世纪的年份

%Y - 包括世纪的年份

%Z - 时区

%% - 输出%

其中有些有时不能正常输出。

default
默认
为空变量设置一个默认值.
当变量为空或者未分配的时候,将由给定的默认值替代输出.

escape
转码
参数值为html,htmlall,url,quotes,hex,hexentity,javascript。默认是html转码

indent
缩进
在每行缩进字符串,第一个参数指定缩进多少个字符,默认是4个字符.第二个参数,指定缩进用什么字符代替。

lower
小写
This is used to lowercase a variable.
将变量字符串小写

nl2br
换行符替换成<br />

regex_replace
正则替换
寻找和替换正则表达式.必须有两个参数,参数1是替换正则表达式. 参数2使用什么文本字串来替换

replace
替换
简单的搜索和替换字符串必须有两个参数,参数1是将被替换的字符串. 参数2是用来替换的文本

spacify
spacify是在字符串的每个字符之间插入空格或者其他的字符串. 参数表示将在两个字符之间插入的字符串,默认为一个空格。

string_format 字符串格式化
是一种格式化浮点数的方法.例如十进制数.使用sprintf语法格式化。参数是必须的,规定使用的格式化方式。%d表示显示整数,%.2f表示截取两个浮点数。

strip 去除(多余空格)
替换所有重复的空格,换行和tab为单个或者指定的字符串. 如果有参数则是指定的字符串。

strip_tags 去除所有html标签

truncate 截取
参数1,规定截取的字符数.默认是80个.
第二个参数指定在截取的那段字符串后加上什么字符.默认为...
第三个参数决定是否精确截取,默认情况下为false,则smarty不会分割单词。

upper 将变量改为大写

wordwrap 行宽约束
第一个参数指定段落的宽度(也就是多少个字符一行,超过这个字符数换行).默认80.
第二个参数指定在约束点使用什么字符(默认是换行符\n).
第三个参数决定是否精确截取字符,默认情况下是不精确截取,就是截取时不能分开单词。

上一篇: 白话C++之安装软件CHM版   下一篇: wxwidgets tutorial

提交疑问

回顶部