Smarty:无法识别继续标记

时间:2011-04-19 08:56:58

标签: smarty continue

所有我想要做的就是使用简单的continue标签,但它一直给我这样的错误:

  

string(145)“Smarty错误:[在module_db_tpl:onlyimage4; image_detail第26行]:语法错误:无法识别的标签'continue'(Smarty_Compiler.class.php,第590行)”

我的代码如下:

{foreach from=$itemlist item="item"}

    < .. SOME CODE ..>

{if $maxCol == $colm}
  </div>
  {assign var ='colm' value = 0}
  {$row++}
  {continue}  **<- THIS IS THE PROBLEM**
{/if}

    <.. SOME CODE ..>
{/foreach}

有没有人知道什么是错的,我一直在谷歌搜索,看到没有这样的评论每个人似乎都认为这应该有用..任何想法的人......

2 个答案:

答案 0 :(得分:2)

旧问题,但您需要使用:{$continue}(包括$

答案 1 :(得分:1)

对于聪明的2: 我不认为标签存在。如果您阅读this thread,您可以看到有人想要它,并建议如此修复它。 (还没试过)

compiler.continue.php

<?php 
function smarty_compiler_con­tinue($contents, &$smarty) 
{ 
return 'continue;'; 
} 
?>

(粗体部分我的补充)

创建这两个文件(在本例中只是一个)并将它们放入plugins目录 (注意命名约定compiler.xxx.php)。

好消息是,对于聪明的3,有这样的标签!请参阅the manual,例如:

{$data = [1,2,3,4,5]}
  {foreach $data as $value}
    {if $value == 3}
      {* skip this iteration *}
      {continue}
    {/if}
    {$value}
  {/foreach}
  {*
    prints: 1 2 4 5
  *}