欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

还是ecshop有关问题:smarty里的 iteration 怎么才能从2开始

程序员文章站 2022-06-09 10:30:22
...
还是ecshop问题:smarty里的 iteration 如何才能从2开始

//iteration 默认是从1开始
{$smarty.foreach.pro.iteration}

//如果我想从11开始应该怎么写?
{$smarty.foreach.pro.iteration + 10?}


不要用这样的 if 判断的 {if $smarty.foreach.pro.iteration = 1}2{/if}

能否在 ?
------解决方案--------------------
可以加个start
修改 includes\cls_template.php 里面的 foreach 处理方法,找到
function _compile_foreach_start($tag_args)
在里面的输出之前添加一个
$i = $attrs['start'] ? $attrs['start'] : 0; //by neo

下面的if里面加入 $i++
if (!empty($name))
{
$foreach_props = "\$this->_foreach['$name']";
$output .= "{$foreach_props} = array('total' => count(\$_from), 'iteration' => 0, 'i' => {$i});\n";
$output .= "if ({$foreach_props}['total'] > 0):\n";
$output .= " foreach (\$_from AS $key_part$item):\n";
$output .= " {$foreach_props}['iteration']++;\n";
$output .= " {$foreach_props}['i']++;\n"; //by neo
}
还是ecshop有关问题:smarty里的 iteration 怎么才能从2开始

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频