php 使用数组实现无限分类的解决办法

内容摘要
这篇文章主要为大家详细介绍了php 使用数组实现无限分类的简单示例,具有一定的参考价值,可以用来参考一下。

对php利用数组实现无限极类别层次对此感兴趣的朋友,看看idc笔记做
文章正文

这篇文章主要为大家详细介绍了php 使用数组实现无限分类的简单示例,具有一定的参考价值,可以用来参考一下。

对php利用数组实现无限极类别层次对此感兴趣的朋友,看看idc笔记做的技术笔记!

/**
 * php利用数组实现无限极类别层次
 *
 * @param 
 * @arrange 五一二笔记网: 512Pic.com
* 创建父节点树形数组
* 参数
* $ar 数组,邻接列表方式组织的数据
* $id 数组中作为主键的下标或关联键名
* $pid 数组中作为父键的下标或关联键名
* 返回 多维数组
**/
function find_parent($ar, $id='id', $pid='pid') { 
foreach($ar as $v) $t[$v[$id]] = $v;
foreach ($t as $k => $item){
if( $item[$pid] ){
if( ! isset($t[$item[$pid]]['parent'][$item[$pid]]) )
$t[$item[$id]]['parent'][$item[$pid]] =& $t[$item[$pid]];
$t[$k]['reference'] = true;
}
} 
return $t;
}
/**
* 创建子节点树形数组
* 参数
* $ar 数组,邻接列表方式组织的数据
* $id 数组中作为主键的下标或关联键名
* $pid 数组中作为父键的下标或关联键名
* 返回 多维数组
**/
function find_child($ar, $id='id', $pid='pid') {
foreach($ar as $v) $t[$v[$id]] = $v;
foreach ($t as $k => $item){
if( $item[$pid] ) {
$t[$item[$pid]]['child'][$item[$id]] =& $t[$k];
$t[$k]['reference'] = true;
}
}
return $t;
}
/***   来自php教程(www.idcnote.com)   ***/

注:关于php 使用数组实现无限分类的简单示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!