PHPCMS快速建站系列之标签调用出错

 {pc:content  action="position" posid="24"  order="listorder ASC" thumb="1" num="5"}
     {php  $v=1;}
     {loop $data $r}
     <li class="li_right_{php echo $v;$v++;}"><a href="{$r['url']}"><img src="{thumb($r['thumb'],155,211)}"></a></li>
     {/loop}
 {/pc}

如上,运行报错,

Parse error: syntax error, unexpected '?' in E:\......    on line 74

查看缓存文件解析模版得:

 


<li class="li_right_<?php echo $v;$v++;}"><a href="<?php echo $r['url'];?>"><img src="{thumb($r['thumb'],155,211)?>"></a></li>

解决方法:模板中<li>中代码分行
 <li class="li_right_{php echo $v;$v++;}">
  <
a href="{$r['url']}"><img src="{thumb($r['thumb'],155,211)}"></a>
</
li>

分析原因:phpcms模板解析逻辑里是按行解析的。如果一行代码中三个以上{}(调用三个以上的标签) 则容易解析出错,建议多个标签套用时,多分行。

 

 

posted @ 2017-01-19 11:23  MY0101  阅读(224)  评论(0编辑  收藏  举报