SMARTY资料收集

nl2br[换行符替换成br /]
regex_replace[正则替换]
replace[替换]
spacify[插空]
string_format[字符串格式化]
strip[去除(多余空格)]
strip_tags[去除html标签]
truncate[截取]
upper[大写]
wordwrap[行宽约束]
capitalize [首字母大写]
count_characters [计算字符数]
cat [连接字符串]
count_paragraphs [计算段落数]
count_sentences [计算句数]
count_words [计算词数]
date_format [时间格式]
default [默认]
escape [转码]
indent[缩进]
lower[小写 ]

<!–{$name|truncate:10:”…”}–>
<!–{$name|capitalize }–>
<!–{include file=”header.tpl”}–> 文件的包含
<!–{include_php file=”./header.php”}–> php文件的包含
<!–{*页面头*}–> 注释,是不透明的
<!–{$str1|capitalize}–> 第一句首字母要大写
<!–{$str2|cat:”李晓军”}–> 变量 + 李晓军,cat为连接
<!–{$str|date_format:”%Y年%m月%d日”}–>输出当前日期
<!–{$name|default:”没有值!”}–> 如果变量没值就显示default定义的值
<!–{$name|indent:8:”*”}–> 缩进8个空白字母位,并使用”*”取替这8个空白字符
<!–{$name|lower}–> 全部变为小写
<!–{html_select_date}–> 显示一个月,日, 年选择框
<!–{html_select_time}–>
<!–{html_image file=”images/me.jpg”  width=”100″ height=”100″}–>显示图片
<!–{html_table loop=$data cols=4}–>
<!–{mailto address=”me@domain.com” text=”联系我们” cc=”to@sdf.com,to2@sd.com”
bcc=”an@song.com” subject=”我毕业了。” extra=’class=”email”‘}–>

<!–{strip}–><!–{/strip}–> 标记中数据的首尾空格和回车. 这样可以保证模板容易理解且不用担心多余的空格导致问题.
<!–{$smarty.ldelim}–> 显示左分隔符
<!–{$smarty.server.SERVER_NAME}–> 取得服务器变量localhost
<!–{$smarty.now}–> 变量用于访问当前时间戳.
<!–{$smarty.now|date_format:”%Y-%m-%d %H:%M:%S “}–> 可以用date_format调节器格式化输出
<!–{$smarty.const.WEBROOT}–> 直接访问PHP常量
<!–{$smarty.template}–> 显示当前被处理的模板的名字.
<!–{$smarty.version}–> 显示smarty模板的版本
<!–{$news|@count}–> 输出数组有多少个元素
<!–{$name|count_characters}–> 计算变量值里的字符数.参数值boolean型决定是否计算空格数。默认不计算空格
<!–{$name|count_paragraphs}–> 计算变量里的段落数量
<!–{$name|count_sentences}–> 计算变量里句子的数量
<!–{$name|count_words}–> 计算变量里的词数
<!–{$name|escape:”html”}–>转码参数值为html,htmlall,url,quotes,hex,hexentity,javascrīpt。默认是html转码
<!–{$name|nl2br}–> 换行符替换成<br/>
<!–{$name|regex_replace:”/\d/”:”*”}–> 正则替换
<!–{$name|replace:”大家好”:”李晓军”}–> 把变量中的”大家好”替换成:李晓军
<!–{$name|spacify:”*”}–> spacify是在字符串的每个字符之间插入空格或者其他的字符串.
<!–{$number|string_format:”%.1f”}–> 字符串格式化
<!–{$name|strip}–> 去除重复的空格
<!–{$text|strip_tags}–> 去除所有html标签
<!–{$name|truncate:12}–> 截取参数1,规定截取的字符数.默认是80个.第二个参数加上什么字符.默认为…
<!–{$text|wordwrap:10:”\n”}–> 超过这10个字符数换行
$smarty-config_load(‘my.conf’); 加载配置文件,并将其中的数据传送到模板中
$smarty-clear_config(); 清除所有配置变量
<!–{debug}–> 将调式信息输出到页面上. 该函数是否可用取决于Smarty的debug设置,只能显示运行时被赋值的变量.
<!–{$SCRIPT_NAME}–> 当前文件的路径
<!–{math equation=”x + y” x=3 y=4}–> 输出7
<!–{textformat wrap=1}–>大    #$  家 好  啊。<!–{/textformat}–>
textformat用于格式化文本. 该函数主要清理空格和特殊字符,
没有缓存的:<!–{$smarty.now}–>

一、模板中调用php文件中函数
php文件中的方法:
function insert_get_time(){//insert 函数默认是不缓存的。并且这个属性不能修改
return date(“Y-m-d H:m:s”);
}
模板中调用:<!–{insert name=”get_time”}–>

还可以传递参数如下:
php端:
function insert_getBanner($array){
print_r($array);//$lid是个数组
return $array[‘lid’];
}
模板中调用:<!–{insert name=”getBanner” lid=’dd’ sid=’aa’}–>

二、模板中定义变量
<!–{assign var=”UserName” value=”大师兄”}–>
在模板内部定义一个变量UserName值为“大师兄”

三、动态生成radio,checkedbox,options
php文件中的radio方法:
$tpl->assign(‘cust_radios’, array(
1001 = ‘Joe Schmoe’,
1002 = ‘Jack Smith’,
1003 = ‘Jane Johnson’,
1004 = ‘Charlie Brown’));
$tpl->assign(‘customer_id’, 1001);

模板中调用:
<!–{html_radios name=”id” options=$cust_radios checked=$customer_id separator=”br /”}–>
php文件中的checkedbox方法:
$tpl->assign(‘cust_checkboxes’, array(
1000 = ‘Joe Schmoe’,
1001 = ‘Jack Smith’,
1002 = ‘Jane Johnson’,
1003 = ‘Charlie Brown’));
$tpl->assign(‘customer_id’, 1001);

模板中调用:
<!–{html_checkboxes name=”id” options=$cust_checkboxes checked=$customer_id separator=”br /”}–>
php文件中的options方法:
$tpl->assign(‘cust_options’, array(
1001 = ‘Joe Schmoe’,
1002 = ‘Jack Smith’,
1003 = ‘Jane Johnson’,
1004 = ‘Charlie Brown’));
$tpl->assign(‘customer_id’, 1001);

模板中调用:
<select name=customer_id>
<!–{html_options options=$cust_options selected=$customer_id}–>
</select>

四、用<!–{$smarty.capture.foo}–>调用capture中的内容
<!–{capture name=”foo”}–>呵呵<!–{/capture}–>
<!–{$smarty.capture.foo}–>

五、计数器
<!–{counter start=0 skip=2 print=false assign=aa}–>
<!–{$aa}–>
<!–{counter}–><!–{$aa}–>
<!–{counter}–><!–{$aa}–>

六、Cycle用来循环显示一组数值
<!–{section name=rows loop=$data}–>
<!–{cycle}–>
<!–{$data[rows]}–>
<!–{/section}–>

七、得到文件的内空,并赋给变量
<!–{fetch file=”http://www.test.com/aa.html” assign=”test”}–>
<!–{$test}–>用来取得文件内容,并输出文件内容.

八、语法
if:
<!–{if $name !== “”}–>
b<!–{$name}–>/b
<!–{/if}–>

foreach:
<!–{foreach key=key item=value from=$news}–>
<!–{$key}–>
<!–{$value.id}–>
<!–{$value.title}–>
<!–{$value.data}–>br
<!–{/foreach}–>

section:
<!–{section name=list loop=$news}–>
<!–{$news.id}–><!–{$news.title}–>
<!–{$news.data}–>
<!–{/section}–>

在模板中执行php语句
<!–{php}–>
global $tpl;
global $db;
$typeArr = $tpl – get_template_vars(“value”);
$IndustryBig = $typeArr[IndustryBig];
$db-query(“SELECT Name FROM `cy_class_industry` where ID=’$IndustryBig'”);
$row = $db-fetchRow();
echo $row[‘Name’];
<!–{/php}–>

郑重声明:

1 本资源来源于互联网,资源的版权归资源原作者所持有,受《中华人民共和国著作权法》等相关法律保护。

2 由于无法和原作者取得联系,所以上传的部分资源无法先通过原作者的同意就分享给大家了,如本资源侵犯了您(原作者)的权益,请联系我们(微信号 xiaohaimei1989),我们会立马删除您的资源,并向您表达诚挚的歉意!

3 本站是一个公益型网站,分享资源的目的在于传播知识,分享知识,收取一点点打赏的辛苦费是用于网站的日常运营开支,并非用于商业用途。

4 本站资源只提供学习和参考研究使用,使用过后请在第一时间内删除。本站不承担资源被单位或个人商用带来的法律责任。

发表评论