Smarty:如何使用Php代码获取foreach的变量

时间:2013-06-19 08:08:39

标签: php foreach smarty

我的代码:

 <!--    {foreach from=$goods_cat.cat_id item=rec_cat name=f1}-->

       <?php      
         **echo  $rec_cat[id]; // get nothing, why?**
        $smarty->assign('goods_cat_' . $rec_cat[id], assign_cat_goods($rec_cat[id], 4));
        $smarty ->assign('cat_goods_nf' , 'goods_cat_' . $rec_cat[id]);           
?>
     <!--{foreach from=$cat_goods_nf item=goods}-->
                  {$goods.url}
     <!--{/foreach}--> 

  <!--{/foreach}--> 

我需要rec_cat的id,所以我使用PHP标签来获取它,但它显示什么?为什么?我怎么能纠正它?

1 个答案:

答案 0 :(得分:0)

请勿在模板中使用<?php标记,而是使用Smarty的{php}标记:

http://www.smarty.net/docsv2/fr/language.function.php.tpl

然后你得到你的变量:

$var = $this->get_template_vars('var');