问题描述
|
我试图做的就是使用简单的continue标记,但它一直给我这样的错误:
字符串(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:
我不认为该标签存在。如果您阅读此主题,您会发现有些人想要它,并提出了修复它的建议。 (尚未尝试)
editor.continue.php
<?php
function smarty_compiler_continue($contents,&$smarty)
{
return \'continue;\';
}
?>
(加粗部分是我的加法)
创建这两个文件(在本例中为一个),并将它们放入您的plugins目录中
(注意命名约定compile.xxx.php)。
好消息是,对于smarty 3,有这样一个标签!请参见手册,并提供示例:
{$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
*}
,旧问题,但您需要使用:{$continue}
(包括$
)