繁体   English   中英

如何在if条件中使用分配的Smarty变量?

[英]How to use assigned Smarty variables inside an if condition?

基本上,我有一个聪明的变量称为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。

我究竟做错了什么? 非常感谢您的参与。

您的{if}语句缺少空格。 此处的正确语法应为:

{if $VAR == 1}

要么:

{if $VAR eq 1}

Smarty {if},{elseif},{else}文档指出:

以下是公认的限定词的列表,这些限定词必须与周围的元素用空格隔开。 请注意,[括号]中列出的项目是可选的。 适当时显示PHP等效项。

完整的文档可以在这里找到:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM