smarty 数组在模版中的运算

smarty通过returnarray('ad3_link_url'=>$this->options['ad3_link_url'],'img_goods_list'=>... smarty 通过 return array(
'ad3_link_url' => $this->options['ad3_link_url'],
'img_goods_list' => $data['img_goods_list'],
);
传递给模版中循环的数组是 {$goods.price|price} 现在想把这一组数,先分别乘以100,除以90,结果4舍5入,再循环,不知该如何写
展开
 我来答
kg33optsp
2011-06-07 · TA获得超过243个赞
知道答主
回答量:507
采纳率:0%
帮助的人:0
展开全部

为什么要在模板里创建?说的充分了我告诉你咋写

额,单纯的靠smarty在模板中声明变量是很不实际的问题,那样还叫什么模板,模板是用来处理变量的。要数组的话就简单最直接的方法就是从逻辑文件中申明直接扔过来。犯不着在模板中声明数组。

99%的模版中只有四个功能:引用文件,条件判断,变量设置,循环绑定。一般没必要再模板中直接声明任何变量。假如真有经常用到的变量,而且它有自己的默认值,可以考虑
<%assign var="title" value=$title|default:"..."%>

单就考虑模板语言,在这里声明一个数组我还真不知道怎么写,你知道了可以告诉我。但就用模板语言声明一个数组,没人这么写,你传过来直接声明不得了?什么是模板?意义。。
追问
在程序里写也可以,但是对于数组,不知道如何重新赋值,或者单独声明一个新的数组,是这个原数组的每一个 都乘以100除以90的 求整数,这个不知道如何写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Loadinger
2011-06-20 · TA获得超过552个赞
知道小有建树答主
回答量:757
采纳率:100%
帮助的人:416万
展开全部
找到template.class.php
再找找strip_tags或者truncate之类的修饰符,知道smarty应该知道这个吧。
有个switch,然后在case里加个算法,拿来算你的9折的。或者写成折扣的,传个参数进去。
用的时候比如:{$goods.price|discount:0.9}
你懂的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友598742b
2011-06-06 · TA获得超过1627个赞
知道小有建树答主
回答量:2655
采纳率:100%
帮助的人:1263万
展开全部
一般情况下,SMARTY只做网页的输出,并不会涉及到太多的运算在里面,否则就意义不大了。建议你在PHP文件中处理完后再使用SMARTY输出。如果需要动态运算的话,可以考虑使用AJAX进行计算。当然也可以使用SMARTY的局部缓存。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式