phpcms v9联动菜单的调用方法及get_linkage函数简单过程

时间:2022-06-01 18:24:15

{get_linkage($r['areaid'],1,' >> ',1)} 
复制代码 
当然这个 $r 也不是绝对的.要看你的loop 是如何写的. 
{loop $data $n $r} 如果是这样写的,就是 $r['areaid'] . 
另外必须保证此字段被正确读取有值. 
下面是global.func.php文件里函数get_linkage :

复制代码

代码如下: 
/** 
* 通过id获取显示联动菜单 
* @param $linkageid 联动菜单ID 
* @param $keyid 菜单keyid 
* @param $space 菜单间隔符 
* @param $result 递归使用字段1 
* @param $infos 递归使用字段2 
*/ 
function get_linkage($linkageid, $keyid, $space = '>', $type = 1, $result = array(), $infos = array()) { 
if($space=='' || !isset($space))$space = '>'; 
if(!$infos) { 
$datas = getcache($keyid,'linkage'); 
$infos = $datas['data']; 

if($type == 1 ) { 
if(array_key_exists($linkageid,$infos)) { 
$result[]=$infos[$linkageid]['name']; 
return get_linkage($infos[$linkageid]['parentid'], $keyid, $space, $type, $result, $infos); 
} else { 
if(count($result)>0) { 
krsort($result); 
$result = implode($space,$result); 
return $result; 

else { 
return $result; 


} else { 
return $infos[$linkageid]['name']; 

}