最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php 無限分類的樹類代碼

 更新時間:2009年12月03日 14:45:23   作者:  
php tree 無限分類代碼,需要的朋友可以參考下。
復(fù)制代碼 代碼如下:

<?php
/**
by lenush;
*/
class Tree
{
var $data = array();
var $child = array(-1=>array());
var $layer = array(-1=>-1);
var $parent = array();

function Tree ($value)
{
$this->setNode(0, -1, $value);
} // end func

function setNode ($id, $parent, $value)
{
$parent = $parent?$parent:0;

$this->data[$id] = $value;
$this->child[$id] = array();
$this->child[$parent][] = $id;
$this->parent[$id] = $parent;

if (!isset($this->layer[$parent]))
{
$this->layer[$id] = 0;
}
else
{
$this->layer[$id] = $this->layer[$parent] + 1;
}
} // end func

function getList (&$tree, $root= 0)
{
foreach ($this->child[$root] as $key=>$id)
{
$tree[] = $id;

if ($this->child[$id]) $this->getList($tree, $id);
}
} // end func


function getValue ($id)
{
return $this->data[$id];
} // end func


function getLayer ($id, $space = false)
{
return $space?str_repeat($space, $this->layer[$id]):$this->layer[$id];
} // end func

function getParent ($id)
{
return $this->parent[$id];
} // end func

function getParents ($id)
{
while ($this->parent[$id] != -1)
{
$id = $parent[$this->layer[$id]] = $this->parent[$id];
}

ksort($parent);
reset($parent);

return $parent;
} // end func

function getChild ($id)
{
return $this->child[$id];
} // end func

function getChilds ($id = 0)
{
$child = array($id);
$this->getList($child, $id);

return $child;
} // end func
} // end class


//new Tree(根目錄的名字);
//根目錄的ID自動分配為0
$Tree = new Tree('目錄導(dǎo)航');

//setNode(目錄ID,上級ID,目錄名字);
$Tree->setNode(1, 0, '目錄1');
$Tree->setNode(2, 1, '目錄2');
$Tree->setNode(3, 0, '目錄3');
$Tree->setNode(4, 3, '目錄3.1');
$Tree->setNode(5, 3, '目錄3.2');
$Tree->setNode(6, 3, '目錄3.3');
$Tree->setNode(7, 2, '目錄2.1');
$Tree->setNode(8, 2, '目錄2.2');
$Tree->setNode(9, 2, '目錄2.3');
$Tree->setNode(10, 6, '目錄3.3.1');
$Tree->setNode(11, 6, '目錄3.3.2');
$Tree->setNode(12, 6, '目錄3.3.3');

//getChilds(指定目錄ID);
//取得指定目錄下級目錄.如果沒有指定目錄就由根目錄開始
$category = $Tree->getChilds();

//遍歷輸出
foreach ($category as $key=>$id)
{
echo $Tree->getLayer($id, '|-').$Tree->getValue($id)."<br />\n";
}
?>

相關(guān)文章

  • 使用PHP訪問RabbitMQ消息隊列的方法示例

    使用PHP訪問RabbitMQ消息隊列的方法示例

    這篇文章主要介紹了使用PHP訪問RabbitMQ消息隊列的方法,結(jié)合實例形式分析了RabbitMQ消息隊列的相關(guān)擴展安裝、隊列建立、隊列綁定、消息發(fā)送、消息接收等相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • PHP使用mysql_fetch_row查詢獲得數(shù)據(jù)行列表的方法

    PHP使用mysql_fetch_row查詢獲得數(shù)據(jù)行列表的方法

    這篇文章主要介紹了PHP使用mysql_fetch_row查詢獲得數(shù)據(jù)行列表的方法,涉及php中使用mysql_fetch_row操作數(shù)據(jù)庫的技巧,需要的朋友可以參考下
    2015-03-03
  • 探討如何使用SimpleXML函數(shù)來加載和解析XML文檔

    探討如何使用SimpleXML函數(shù)來加載和解析XML文檔

    本篇文章是對使用SimpleXML函數(shù)來加載和解析XML文檔進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php取出數(shù)組單個值的方法

    php取出數(shù)組單個值的方法

    下面小編就為大家分享一篇php取出數(shù)組單個值的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • php使用ereg驗證文件上傳的方法

    php使用ereg驗證文件上傳的方法

    這篇文章主要介紹了php使用ereg驗證文件上傳的方法,是非常簡單實用的正則驗證技巧,具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-12-12
  • php遠(yuǎn)程下載類分享

    php遠(yuǎn)程下載類分享

    這篇文章主要為大家分享了php遠(yuǎn)程下載類,用戶可以將下載文件到主機,感興趣的小伙伴們可以參考一下
    2016-04-04
  • 新手菜鳥必讀:session與cookie的區(qū)別

    新手菜鳥必讀:session與cookie的區(qū)別

    以下是對php中session與cookie的區(qū)別進(jìn)行了詳細(xì)的分析介紹,新手朋友們一定要過來參考下
    2013-08-08
  • 用PHP編寫和讀取XML的幾種方式

    用PHP編寫和讀取XML的幾種方式

    今天我看了IBM的一些官方文檔和一些XML的相關(guān)資料,特把一些關(guān)鍵點以及PHP編寫和讀取XML的一些實例整理出來,方便以后使用
    2013-01-01
  • php防止sql注入簡單分析

    php防止sql注入簡單分析

    這篇文章主要介紹了php防止sql注入的方法,簡單分析了通過stripslashes及mysql_real_escape_string函數(shù)進(jìn)行字符轉(zhuǎn)移處理的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • 基于win2003虛擬機中apache服務(wù)器的訪問

    基于win2003虛擬機中apache服務(wù)器的訪問

    下面小編就為大家?guī)硪黄趙in2003虛擬機中apache服務(wù)器的訪問。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08

最新評論

巴楚县| 金堂县| 同仁县| 碌曲县| 收藏| 景德镇市| 衡水市| 林口县| 屏边| 济南市| 镇巴县| 黄浦区| 永城市| 中牟县| 城市| 莫力| 双流县| 建湖县| 浮梁县| 霍邱县| 通化县| 深泽县| 女性| 英山县| 漯河市| 吉水县| 盐城市| 新源县| 彭山县| 鄂托克前旗| 南部县| 民县| 金寨县| 锦屏县| 汾阳市| 扶沟县| 晋中市| 无棣县| 资兴市| 双桥区| 静乐县|