Smarty的注释方式是将注释内容写在成对的星号中,如
{* 这里是注释文本 *}
当然,也可以这样
{*
这里是第1行注释文本
这里是第2行注释文本
*}
在Smarty手册里将第2种方法称为Multiline smarty comment(多行注释)。这种一般用于说明Smarty程序的含义,而不是起到隐藏客户端代码的功能。
下面要讨论一种特殊的多行注释的方法,请先看下面的例子
<div>
{ if $con == false }
一些HTML代码或者是含有Javascript的代码
{ /if }
</div>
这是一段HTML代码,其中使用了Smarty进行了逻辑控制。但是,现在我们暂时不想让客户端显示这段代码,那么最好的方法就是将整个div注释掉。您可能会想到
{ * }
<div>
{ if $con == false }
一些HTML代码或者是含有Javascript的代码
{ /if }
</div>
{ * }
可惜,这样做是无效的。因此,Smarty所说的多行注释其实是在不打断Smarty程序分隔符的情况下的多行注释。那我们如何进行这样的注释呢?其实,我们可以巧妙得使用if语句来进行注释,如下:
{ if 0==1 }
<div>
{ if $con == false }
一些HTML代码或者是含有Javascript的代码
{ /if }
</div>
{ /if }
if 0 == 1 这个条件是永远不成立的,因此,中间的代码也就运行不了了,这样就间接起到了一个注释的作用了。当然,为了提高程序的可读性,您可以在if旁边添加一个单行注释,来说明这个if语句的作用是注释。
Ferris
2008-08-14