如何在if条件中使用指定的Smarty变量?

时间:2015-01-09 02:26:19

标签: php smarty

Basicaly我有一个名为VAR的聪明变量,如果它的值是' 1',则应该包含文件number1,否则它应该包含文件number2,但我不能似乎让它发挥作用。

我有两个页面,一个是我分配变量的PHP页面,另一个是Smarty代码:

   PHP page:

       include_once('lib/smarty/Smarty.class.php');
       $smarty = new Smarty;

       $smarty->template_dir = '../template/';
       $smarty->compile_dir = '../templates_c/';

       $smarty->assign('VAR', $number);

   Smarty Page:


       {if $VAR==1}
       {include file='number1.tpl'}
       {else}
       {include file='number2.tpl'}
       {/if} 

当我在PHP页面中回显$ VAR时,它显示1,但是当我进入Smarty页面时,它总是显示number2.tpl。

我做错了什么? 非常感谢你的时间。

1 个答案:

答案 0 :(得分:0)

您的{if}语句缺少间距。这里的正确语法应该是:

{if $VAR == 1}

或者:

{if $VAR eq 1}

Smarty {if},{elseif},{else}文档声明:

  

以下是已识别的限定符列表,必须通过空格与周围元素分隔。请注意,[方括号]中列出的项目是可选的。在适用的情况下显示PHP等价物。

此处提供完整文档:

http://www.smarty.net/docsv2/en/language.function.if.tpl