一个真正简洁高效的无限分类
时间:2009-06-04
来源:互联网
本帖最后由 ipver6 于 2009-6-5 10:42 编辑
详情http://www.zeevin.cn/?p=17
<?php
header(’Content-type: text/html; charset=gb2312′);
//以下是接收的数据格式
//$array[0] = array(”id”=>1,”pid”=>0,”name”=>”诛求”);
//$array[1] = array(”id”=>2,”pid”=>0,”name”=>”2″);
//$array[2] = array(”id”=>3,”pid”=>1,”name”=>”3″);
//$array[3] = array(”id”=>4,”pid”=>1,”name”=>”4″);
//$array[4] = array(”id”=>5,”pid”=>2,”name”=>”5″);
//$array[5] = array(”id”=>6,”pid”=>4,”name”=>”6″);
//$array[6] = array(”id”=>7,”name”=>”66″,”pid”=>6);
draw($array);//执行,已经改成下拉菜单形式
function draw($array){
//tree array — copy some codes from joomla
$tree = array();
if( $array ){
foreach ( $array as $v ){
$pt = $v['pid'];
$list = @$tree[$pt] ? $tree[$pt] : array();
array_push( $list, $v );
$tree[$pt] = $list;
}
}
//foreach root node
echo $sel=”<select name=’pid’><option value=0>作为根栏目</option>”;
foreach($tree[0] as $k=>$v)
{
echo “<option value=$v[id]>$v[name]</option>”;
if($tree[$v['id']]) drawTree($tree[$v['id']],$tree,0);
}
echo “</select>”;
}
//foreach child node
function drawTree($arr,$tree,$level)
{
$level++;
$prefix = str_pad(”|”,$level+1,’-',STR_PAD_RIGHT);
foreach($arr as $k2=>$v2)
{
echo “<option value=$v2[id]>$prefix$v2[name]</option><br/>”;
if($tree[$v2['id']]) drawTree($tree[$v2['id']],$tree,$level);
}
}
?>
说不能用的同志请看一下代码再运行,别复制过去就运行,没看见数据已经被注视了吗??这只是提示你一下数据格式,没数据你分什么类,崩溃,别太懒还所有错误~~~~
详情http://www.zeevin.cn/?p=17
<?php
header(’Content-type: text/html; charset=gb2312′);
//以下是接收的数据格式
//$array[0] = array(”id”=>1,”pid”=>0,”name”=>”诛求”);
//$array[1] = array(”id”=>2,”pid”=>0,”name”=>”2″);
//$array[2] = array(”id”=>3,”pid”=>1,”name”=>”3″);
//$array[3] = array(”id”=>4,”pid”=>1,”name”=>”4″);
//$array[4] = array(”id”=>5,”pid”=>2,”name”=>”5″);
//$array[5] = array(”id”=>6,”pid”=>4,”name”=>”6″);
//$array[6] = array(”id”=>7,”name”=>”66″,”pid”=>6);
draw($array);//执行,已经改成下拉菜单形式
function draw($array){
//tree array — copy some codes from joomla
$tree = array();
if( $array ){
foreach ( $array as $v ){
$pt = $v['pid'];
$list = @$tree[$pt] ? $tree[$pt] : array();
array_push( $list, $v );
$tree[$pt] = $list;
}
}
//foreach root node
echo $sel=”<select name=’pid’><option value=0>作为根栏目</option>”;
foreach($tree[0] as $k=>$v)
{
echo “<option value=$v[id]>$v[name]</option>”;
if($tree[$v['id']]) drawTree($tree[$v['id']],$tree,0);
}
echo “</select>”;
}
//foreach child node
function drawTree($arr,$tree,$level)
{
$level++;
$prefix = str_pad(”|”,$level+1,’-',STR_PAD_RIGHT);
foreach($arr as $k2=>$v2)
{
echo “<option value=$v2[id]>$prefix$v2[name]</option><br/>”;
if($tree[$v2['id']]) drawTree($tree[$v2['id']],$tree,$level);
}
}
?>
说不能用的同志请看一下代码再运行,别复制过去就运行,没看见数据已经被注视了吗??这只是提示你一下数据格式,没数据你分什么类,崩溃,别太懒还所有错误~~~~
作者: ipver6 发布时间: 2009-06-04
测试了一下 错误太多!
作者: 齐迹 发布时间: 2009-06-04
请先修正,再发布 。
作者: jinco 发布时间: 2009-06-04
齐迹 你得看仔细了在测试,没看见我把数据都给注释了吗?这只是告诉你这一个数据格式,复制过去改业不该就运行,真汗!
作者: ipver6 发布时间: 2009-06-05
应用有局限性,只有一种展示方式(下拉的)。
作者: 从头再来 发布时间: 2009-06-05
自己动手,丰衣足食~~~

作者: langcier 发布时间: 2009-10-20
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28