今天看代码遇到个问题,给模板赋值是用
assign('变量名','变量值')完成的吧,模板那边<volist name="变量名" id="循环量">xxx
</volist>
但是我遇到了变量名好像不一样啊。
<ul class="main-nav">
<volist name="__MENU__.main" id="menu">
<li class="{$menu.class|default=''}"><a href="{$menu.url|U}">{$menu.title}</a></li>
</volist>
</ul>
$this->assign('__MENU__', $this->getMenus());这个多出来的.main是个啥?新人求解答
------解决思路----------------------
__MENU__是一个数组,__MENU__.main也就相当于__MENU__['main']
再说的明白一点,假设数组$a=array('main'=>array(1,2,3)),$a.main也就是$a['main'],也就是array(1,2,3)。
------解决思路----------------------
php5.4+ 可以这样
assign(__MENU__,getMenus()['main'])
若小php5.4版本
就这样
$tmp=getMenus();
assign(__MENU__,$tmp['main'])