兔源码网 - 专注DZ模版分享、DZ插件分享!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

广告
温馨提示:本站所有DZ相关模板、插件、教程(包括DZ应用中心已下架插件、模板)皆为提供免费下载,无任何收费模式(不包括VIP版块非DZ资源,VIP版块需充值兔币购买会员组方可下载),用户仅需手动前往【申请下载权限】申请用户组下载权限即可,如本站没有您需要的插件或模板,请自行前往淘宝互站网送吗网等第三方站点搜索相关插件或模板进行低价格购买下载本站非常不建议用户浪费金钱前往DZ应用中心购买。

ECSHOP模板文件Foreach循环中定义新变量并赋值和判断

[复制链接]
tuzi 发表于 2015-8-8 23:31:07 | 显示全部楼层 |阅读模式
温馨提醒:禁止内容附带广告图片、二维码图片,否则将在不通知情况下永久禁言账号!
欢迎加入兔源码站长交流群,您的加入是我们前行的动力!

DZ站长建站交流群:493651246

[ 温馨提示:点击上方群文字,可快速加入QQ群 ]


看到标题有人会说了,这个很少会被用到吧,我们在Foreach循环中可以使用iteration或index来判断呀,什么时候需要定义新变量来判断呢?
9 m) q- Z1 o8 Z- P. |  Y2 v的确,这是一个对于ECSHOP二次开发人员来说很生僻的一个知识点,基本上用到它的情况很少。5 L: ^% o9 _& J! n7 O' R- M! v; T
这种ECSHOP教程只需要了解一下,不必深究,记住有这么回子事就行,以备不时之需。7 j/ s# B; ?1 I0 p
1 g6 @0 D8 K& t9 j
比方你要在ECSHOP模板文件中使用一个Foreach循环(数组$payment_list),而这个循环的某个元素(tenpay_bank),你又不想显示,7 u/ y! q% |! [( s
但是你不确定这个元素(tenpay_bank)是第几个元素,有可能是第一个,也有可能是第N个。
% k) v9 R4 m& x* V! A而且你还需要在循环中进行判断,当第一个有效元素(除元素(tenpay_bank)之外的其他元素)输出时进行如何如何的特殊动作。$ p6 \' t3 M& C3 x
如果这个时候你再使用smarty.foreach.payment_ecshop120_com.iteration 或 smarty.foreach.payment_ecshop120_com.index 来判断的话就显得那么无力了。
3 T4 h, v0 L/ U6 |
& a- ?5 v% m" h4 N. m) r这个时候我们就需要在Foreach循环中定义一个新变量并赋值和判断:
; F6 r' T- ^+ [; d9 ]% `7 L2 C/ {$ a0 k( F2 R
<!-- {assign var="i" value="1"}  By  www.ecshop120.com -->
5 ]! b7 v; s+ d<!-- {foreach from=$payment_list name="payment_list_ecshop120" item=payment} -->* B: j1 q+ P6 \) d6 ^* k" \! |
<!-- {if $payment.pay_code neq 'tenpay_bank'} 这个tenpay_bank 就是循环中的某个元素A-->
3 L9 |- m6 K" g$ }2 M8 c  e  t* b; K<tr>
9 |, q6 G; ]* }& |{if $i eq "1"}
# f  {% ]5 M& e0 O( D& l$ [<td bgcolor="#ffffff" rowspan=20 align=center><strong>其他支付方式</strong></td>
; Q6 `# S4 O& M7 F5 v* A{/if}5 o& b0 V( X% s5 T. [3 [4 j; K
<td valign="top" bgcolor="#ffffff" >: x% @. _+ Z3 L0 n( F6 [
。。。。。。
7 D& p5 A  Y6 \( Q</td>& {5 ~8 C. G! ]1 I) V4 f2 I
<td align="right" bgcolor="#ffffff" >$ q! j( Z2 c0 U7 L- y3 X0 y8 Z
。。。。。。$ c# N0 R, {  o0 H+ D: z- j
</td>, _! N5 Y7 _9 k2 }- v1 _+ r( s
</tr>2 D0 c  p: w8 G* x: `4 b
{assign var=i value="2"}0 A$ I( H- w& x; f! u
{/if}
4 c2 d7 e- B7 V6 _6 a5 `<!-- {/foreach} --> 9 q5 s- ?- x- a; l* g( O
  W. Q$ @/ ~7 G& q
上述代码可以这样理解,在Foreach循环外定义了一个新变量 i,值为1,然后开始循环,
9 y( \  R. |- p8 Z4 R. N在循环内部改变这个变量 i 的值为2,并且在循环内部加一个判断,如果这个变量i 值为1,那么就是第一个有效元素输出的时候。
; j+ M7 r5 C' a+ Z总结:在ECSHOP模板文件Foreach循环中定义新变量的方法为 {assign var="kkk" value="12345"},
. r0 B, J% w' r4 d! S5 Y$ s不一定是Foreach循环,只要是ECSHOP模板文件,任何地方需要的时候都可以使用这个语句。
/ P; j( \4 f0 v/ f5 k

版权声明
1、转摘或引用本站内容资源须注明原网址,并标明本站网址(兔源码www.tuyuanma.com);
2、对于转摘或引用本站内容资源而引起的民事纠纷、行政处罚或其他损失,本站不承担责任;
3、对于不遵守本声明或其他违法、恶意使用本站内容者,本站保留其追究法律责任的权利。




自动排版 | 高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广告

兔源码网 ( 赣ICP备17001544号 公网安备36112102000036号 )

兔源码 QQ交流群:493651246  GMT+8, 2019-9-22 05:34
←站长统计工具 查看密码:tuyuanma

兔源码DZ模板下载 站长邮箱:tuyuanma@qq.com 站长QQ:3197813386 网站地图

© 2001-2013 本站内容皆来自互联网及用户分享,如需删除请提供软著或商标证书。

     
快速回复 返回顶部 返回列表