我怎样才能在smarty中使用这样的陈述?

时间:2011-04-09 14:45:46

标签: php smarty

{assign var=tmp_url value=setURI(array('page' => 1))}

似乎array()无法在smarty中使用?

我尝试了各种各样的方法,但都没有效果。

有人知道这个伎俩吗?

3 个答案:

答案 0 :(得分:0)

据我所知,没有本机方式在smarty中设置数组你可以将数组分配给php中的smarty模板并将其命名为

然后像这样

以智能方式访问它
 {assign var=tmp_url value=setURI($page[1])}

或者您可以使用插件。此thread中还有其他一些选项,但我不确定哪种选择最适合您。你可能需要找到另一种方法来做你想做的事情或以某种方式修改你的功能,所以它可以采取一个字符串

答案 1 :(得分:0)

您可以使用{php}标记在其中分配变量值:

<h1>Foo!{$var}</h1>
{php}
$this->assign('tmp_url', setURI($page[1]));
{/php}
<a href={$tmp_url}">bar</a>

答案 2 :(得分:0)

试试这个,

在php文件中,编写一个函数

<?php
 function getSetUri(){
   return setURI(array('page' => 1));
 }
?>

在模板文件中,只需调用函数

即可
{assign var=tmp_url value=getSetUri()}
相关问题