当前位置: 网学 > 编程文档 > PHP > 正文

PHP无限分类代码,支持数组格式化、直接输出菜单两种方式

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/06/21
要用到
* @param $adds
* @param $str_group
*/
function get_tree($myid, $str, $sid = 0, $adds = '''', $str_group = '''')
{
$number=1;
$child = $this->get_child($myid);
if(is_array($child)) {
$total = count($child);
foreach($child as $id=>$a) {
$j=$k='''';
if($number==$total) {
$j .= $this->icon;
} else {
$j .= $this->icon;
$k = $adds ? $this->icon[0] : '''';
}
$spacer = $adds ? $adds.$j : '''';
$selected = $id==$sid ? ''selected'' : '''';
@extract($a);
$parentid == 0 && $str_group ? eval("\$nstr = \"$str_group\";") : eval("\$nstr = \"$str\";");
$this->ret .= $nstr;
$this->get_tree($id, $str, $sid, $adds.$k.'' '',$str_group);
$number++;
}
}
return $this->ret;
}

/**
* 同上一方法类似,但允许多选
*/
function get_tree_multi($myid, $str, $sid = 0, $adds = '''')
{
$number=1;
$child = $this->get_child($myid);
if(is_array($child))
{
$total = count($child);
foreach($child as $id=>$a)
{
$j=$k='''';
if($number==$total)
{
$j .= $this->icon;
}
else
{
$j .= $this->icon;
$k = $adds ? $this->icon[0] : '''';
}
$spacer = $adds ? $adds.$j : '''';

$selected = $this->have($sid,$id) ? ''selected'' : '''';
@extract($a);
eval("\$nstr = \"$str\";");
$this->ret .= $nstr;
$this->get_tree_multi($id, $str, $sid, $adds.$k.'' '');
$number++;
}
}
return $this->ret;
}

function have($list,$item){
return(strpos('',,''.$list.'','','',''.$item.'',''));
}

/**
+------------------------------------------------
* 格式化数组
+------------------------------------------------
* @author yangyunzhou@foxmail.com
+------------------------------------------------
*/
function getArray($myid=0, $sid=0, $adds='''')
{
$number=1;
$child = $this->get_child($myid);
if(is_array($child)) {
$total = count($child);
foreach($child as $id=>$a) {
$j=$k='''';
if($number==$total) {
$j .= $this->icon;
} else {
$j .= $this->icon;
$k = $adds ? $this->icon[0] : '''';
}
$spacer = $adds ? $adds.$j : '''';
@extract($a);
$a[''title''] = $spacer.'' ''.$a[''title''];
$this->ret[$a[''id'']] = $a;
$fd = $adds.$k.'' '';
$this->getArray($id, $sid, $fd);
$number++;
}
}

return $this->ret;
}
}
?>

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号