比如  $type="fc"而 $fc 是个数组怎么样把 $type 转换成 $fc 呢?我需要这样一个循环转换。。  就差这一步了

解决方案 »

  1.   

    $fc=array("a","b","c","d");
    $type="fc";
    $type=$$type;
    print_r($type);
      

  2.   

    怎么在 smarty 里面报错呀在smarty模板里面这样写行吗?
      

  3.   


    //变量的变量
    $fc = array(1, 2, 3, 4);
    $type = "fc";
    print_r($$type);
      

  4.   

    +smarty中//{}是边界符
    {php}
    $fc = array(1, 2, 3, 4);
    $type = "fc";
    print_r($$type);
    {/php}
      

  5.   

    不报错了。  可是在 smarty当中,  $$type  变成字符串了。{<assign var="types" value=$info_types[info_type].subtitle>} //定义变量,赋予数组中的值
    {<assign var="types" value=$$types>}  //再次转换成变量形式
    {<$types>}  //输出输出结果就是 $fc ...  
    其实应该是 array..
      

  6.   

    没用过smarty 我们老大说过时了,没必要去学~
      

  7.   

    这是php中运用的,没看见是在php标签里用的么?
      

  8.   

    嗯。 我测试了下, 在PHP中正确运行的。谁知道在 smarty当中 ,如何把字符串转换成变量名啊?
      

  9.   

    意思就是。。 smarty不支持这样做吗?那我的后台自定义网站栏目,岂不是白费了 
      

  10.   

    不知道你要做什么。
    实在不行,就在PHP里处理了,再在模板里操作吧。
      

  11.   

    smarty 3 可以直接使用 {${$type}} 的方式获得变量的变量Smarty2 自己做一个文件名为:modifier.varvar.php 放在plugins目录里,此文件的代码如下:<?php function smarty_modifier_varvar($string) 

        global $smarty; 
        return $smarty->_tpl_vars[$string]; 
    } ?>
    在TPL模板文件中可以这样调用变量的变量:{assign var="type" value='fc'} 
    {$type|varvar} 上面两句相当于{$fc}