php简单实现无限分类树形列表的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了php简单实现无限分类树形列表的方法。分享给大家供大家参考。具体如下:

$items = array( 
  1 => array('id' => 1, 'pid' => 0, 'name' => '江西省'), 
  2 => array('id' => 2, 'pid' => 0, 'name' => '黑龙江省'),
  3 => array('id' => 3, 'pid' => 1, 'name' => '南昌市'), 
  4 => array('id' => 4, 'pid' => 2, 'name' => '哈尔滨市'),
  5 => array('id' => 5, 'pid' => 2, 'name' => '鸡西市'), 
  6 => array('id' => 6, 'pid' => 4, 'name' => '香坊区'), 
  7 => array('id' => 7, 'pid' => 4, 'name' => '南岗区'), 
  8 => array('id' => 8, 'pid' => 6, 'name' => '和兴路'), 
  9 => array('id' => 9, 'pid' => 7, 'name' => '西大直街'), 
  10 => array('id' => 10, 'pid' => 8, 'name' => '东北林业大学'),
  11 => array('id' => 11, 'pid' => 9, 'name' => '哈尔滨工业大学'),
  12 => array('id' => 12, 'pid' => 8, 'name' => '哈尔滨师范大学'),
  13 => array('id' => 13, 'pid' => 1, 'name' => '赣州市'), 
  14 => array('id' => 14, 'pid' => 13, 'name' => '赣县'), 
  15 => array('id' => 15, 'pid' => 13, 'name' => '于都县'), 
  16 => array('id' => 16, 'pid' => 14, 'name' => '茅店镇'), 
  17 => array('id' => 17, 'pid' => 14, 'name' => '大田乡'), 
  18 => array('id' => 18, 'pid' => 16, 'name' => '义源村'), 
  19 => array('id' => 19, 'pid' => 16, 'name' => '上坝村'), 
  20 => array('id' => 20, 'pid' => 0, 'name' => '广东省'), 
  21 => array('id' => 21, 'pid' => 20, 'name' => '广州市'),
); 
$t = array(); 
foreach ($items as $id => $item) { 
  if ($item['pid']) { 
    $items[$item['pid']][$item['id']] = &$items[$item['id']];
    $t[] = $id; 
  } 
} 
foreach($t as $u) { 
  unset($items[$u]); 
} 
echo "<pre>"; 
print_r($items);

希望本文所述对大家的php程序设计有所帮助。

相关文章

php不写闭合标签的好处

最早这个概念是从Drupal中接触到的,一开始有点不习惯——为什么不写闭合标签呢?这感觉很不完美啊,对于有强迫症的人来说很不适应嘛!后来,在工作中碰到了因为标签闭合而引起的问题,才开始不...

PHP合并两个数组的两种方式的异同

特别是+运算符,他的意思是,将右边的数组单元(去重复)追加到左边数组的后面。 复制代码 代码如下: <?php echo "\r\n第一种情况\r\n"; $a=array(1,2...

PHP面向对象的进阶学习(抽像类、接口、final、类常量)

一、抽像类(abstract) 在我们实际开发过程中,有些类并不需要被实例化,如前面学习到的一些父类,主要是让子类来继承,这样可以提高代码复用性 语法结构: 复制代码 代码如下: abs...

PHP实现登陆表单提交CSRF及验证码

PHP实现登陆表单提交CSRF及验证码

1、表单提交,并将其提交到本页 (1) form 属性method为post方法,修改路由,使其接收post、get的请求 Route::any('/admin/login','Admi...

php数据访问之增删改查操作

php数据访问之增删改查操作

增删改查操作小练习,大家练练手吧 一、查看新闻页面-----主页面 <html> <head> <meta http-equiv="Content...