Home > Article > Backend Development > ThinkPHP使用volist模板赋值问题
今天看代码遇到个问题,给模板赋值是用
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());
相当于__MENU__['main'],它应该是个数组,就是你用$this->getMenus()获取到的
相当于__MENU__['main'],它应该是个数组,就是你用$this->getMenus()获取到的
__MENU__是一个数组,__MENU__.main也就相当于__MENU__['main']
再说的明白一点,假设数组$a=array('main'=>array(1,2,3)),$a.main也就是$a['main'],也就是array(1,2,3)。
__MENU__是一个数组,__MENU__.main也就相当于__MENU__['main']
再说的明白一点,假设数组$a=array('main'=>array(1,2,3)),$a.main也就是$a['main'],也就是array(1,2,3)。
assign(__MENU__,getMenus().main)php可以这样写不。。。?
php5.4+ 可以这样
assign(__MENU__,getMenus()['main'])
$tmp=getMenus();assign(__MENU__,$tmp['main'])