一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP 無限分類三種方式 非函數(shù)的遞歸調(diào)用!

php無限分類大致有三種方式,

  1、數(shù)據(jù)庫通過設(shè)置父類ID來進(jìn)行唯一索引,然后使用函數(shù)的遞歸調(diào)用實(shí)現(xiàn)無限分類;

  2、數(shù)據(jù)庫設(shè)計(jì)通過特定格式進(jìn)行排列,然后使用mysql查詢關(guān)鍵函數(shù):concat。程序?qū)崿F(xiàn)比較簡單;

  3、第三種不是太了解, 好像要使用到算法和數(shù)據(jù)結(jié)構(gòu)進(jìn)行排列。

今天我主要分享下第二種方式,一開始也是找了很多資料,確實(shí)比較難理解。不過最終還是給搞明白了,因此記下隨筆,希望通過這篇文章能夠幫助到大家。

一、數(shù)據(jù)庫設(shè)計(jì):  


復(fù)制代碼 代碼如下:
--
-- Table structure for table `category`
--
CREATE TABLE IF NOT EXISTS `category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`catpath` varchar(255) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
--
-- Dumping data for table `category`
--
INSERT INTO `category` (`id`, `catpath`, `name`) VALUES
(1, '0', '網(wǎng)站首頁'),
(2, '0-1', 'Linux OS'),
(3, '0-1', 'Apache服務(wù)器'),
(4, '0-1', 'MySQL數(shù)據(jù)庫'),
(5, '0-1', 'php腳本語言'),
(6, '0-1-2', 'Linux 系統(tǒng)教程'),
(7, '0-1-2', 'Linux 網(wǎng)絡(luò)技術(shù)'),
(8, '0-1-2', 'Linux 安全基礎(chǔ)'),
(9, '0-1-2-7', 'Linux LAMP'),
(10, '0-1-3-10', 'apache Server');

這里說明下,catpath的-鏈接符號不是固定的,可以選擇,;等特殊符號。
二、 php代碼實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
$conn = mysql_connect ( 'localhost', 'root', '' );
mysql_select_db ( 'test', $conn );
mysql_query ( 'set names UTF8' );
$sql = "select id,concat(catpath,'-',id) as abspath,name from category order by abspath";
$query = mysql_query ( $sql );
while ( $row = mysql_fetch_array ( $query ) ) {
/**
* 第一種展示方法
*/
/*$space = str_repeat ( '    ', count ( explode ( '-', $row ['abspath'] ) ) - 1 );
echo $space . $row ['name'] . '<br>';*/
/**
* 第二種展示方法
*/
$space = str_repeat ( '    ', count ( explode ( '-', $row ['abspath'] ) ) - 1 );
$option .= '<option value="' . $row ['id'] . '">' . $space . $row ['name'] . '</option>';
}
echo '<select name="opt">' . $option . '</select>';

上效果圖:

    

這里有幾個關(guān)鍵的地方需要注意下:
 1、在數(shù)據(jù)庫查詢字段是用了concat函數(shù),不了解的地方可以google下。 
 2、第二個地方主要是用到了php中的str_repeat巧妙的設(shè)置了空格。
有錯誤之處,望mail: chenghuiyong1987@gmail.com或者留言

php技術(shù)PHP 無限分類三種方式 非函數(shù)的遞歸調(diào)用!,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美xxxx色视频在线观看免费 | 欧美激情乱人伦 | 午夜黄色毛片 | 三级日韩| 精品日本久久久久久久久久 | 一级做性色a爰片久久毛片免费 | 天天色天天射天天操 | 成人在线激情网 | 中文字幕一区二区三区 精品 | f性欧美 | 青春草久久 | 成人欧美在线观看 | 亚洲人xx视频 | 午夜视频免费在线 | 四虎影视在线观看永久地址 | 黄网观看| 高清国产一区 | xxx日本在线 | 色婷婷综合久久久中文字幕 | 男人精品网站一区二区三区 | 美女无遮挡免费视频 | 男啪女色黄无遮挡免费视频 | 成人精品视频在线观看播放 | 久久精品国产99国产精品 | 免费黄色美女网站 | 国内精品视频成人一区二区 | 亚洲国产成人精品女人久久久 | 91小视频在线观看免费版高清 | 四虎影视永久在线 yin56xyz | 亚洲综合一二三区 | 成人在线亚洲 | 亚洲一区免费看 | 91最新免费观看在线 | 日本精品高清一区二区2021 | 国产成人mv在线观看入口视频 | 老太婆性杂交欧美肥老太 | 日本欧美国产精品第一页久久 | 大胆gogo999亚洲肉体艺术 | 色多多免费视频 | 久久国产精品高清一区二区三区 | 91最新网站 |