php 無(wú)限分類實(shí)現(xiàn)方法實(shí)例代碼_PHP教程
推薦:PHP根據(jù)變量的類型 選擇dump或echo我想要在PHP輸出變量的時(shí)候,如果是數(shù)組,則用var_dump,如果是字符串之類的,則echo即可,該如何實(shí)現(xiàn)呢? 此時(shí),is_scalar內(nèi)置函數(shù)就派上用場(chǎng)了。is_scalar-- 檢測(cè)變量是否是一個(gè)標(biāo)量 標(biāo)量變量是指那些包含了 integer 、 float 、 string 或 boolean 的變量,而 array
算法,各種算法對(duì)一個(gè)數(shù)學(xué)很爛的人來(lái)說(shuō)真是一個(gè)嚴(yán)重的打擊!!!但誰(shuí)讓咱干程序這行呢(哭)。
搞了幾小時(shí),參照 http://yuepin.com/Explore/tree.php? 該網(wǎng)址的說(shuō)明實(shí)例,可算是明白一點(diǎn),下邊代碼,給自己留個(gè)筆記。
注:因?yàn)槭菬o(wú)限次的調(diào)用,所以我加了個(gè)判斷,在層級(jí)$level=10的時(shí)候讓他跳出。沒(méi)有哪個(gè)正常網(wǎng)站會(huì)放超過(guò)10層的目錄結(jié)構(gòu)吧。
- $yArr = array(
- 1 => array('id'=>'1','parentid'=>0,'name'=>'一級(jí)欄目一'),
- 2 => array('id'=>'2','parentid'=>0,'name'=>'一級(jí)欄目二'),
- 3 => array('id'=>'3','parentid'=>1,'name'=>'二級(jí)欄目一'),
- 4 => array('id'=>'4','parentid'=>1,'name'=>'二級(jí)欄目二'),
- 5 => array('id'=>'5','parentid'=>2,'name'=>'二級(jí)欄目三'),
- 6 => array('id'=>'6','parentid'=>3,'name'=>'三級(jí)欄目一'),
- 7 => array('id'=>'7','parentid'=>3,'name'=>'三級(jí)欄目二'),
- 8 => array('id'=>'8','parentid'=>2,'name'=>'二級(jí)欄目三'),
- );
- /**
- * 無(wú)限分類
- * @param array $data 原始數(shù)組
- * @param int $id 當(dāng)前id
- * @param int $layer 當(dāng)前層級(jí)
- */
- function genCate($data, $pid = 0, $level = 0)
- {
- if($level == 10) break;
- static $tarr= array();
- $l = str_repeat(" ", $level);
- $l = $l.'└';
- foreach($data as $row)
- {
- /**
- * 如果父ID為當(dāng)前傳入的id hl5o.cn
- */
- if($row['parentid'] == $pid)
- {
- //如果當(dāng)前遍歷的id不為空
- $row['name'] = htmlspecialchars($l.$row['name']);
- $row['level'] = $level;
- $tarr[] = $row;
- genCate($data, $row['id'], $level+1);//遞歸調(diào)用
- }
- }
- return $tarr;
- }
- $carr = genCate($yArr);
- print_r($carr);
分享:CI鏈接操作多個(gè)數(shù)據(jù)庫(kù)CI鏈接多個(gè)數(shù)據(jù)庫(kù) 最近有個(gè)需求,做一個(gè)獨(dú)立后臺(tái)出來(lái),這個(gè)獨(dú)立后臺(tái)有單獨(dú)的庫(kù),單獨(dú)的url,單獨(dú)。但是,這里邊只是一些基礎(chǔ)數(shù)據(jù),而使用者需要通過(guò)該庫(kù)查看另一個(gè)庫(kù)里的統(tǒng)計(jì)數(shù)據(jù)。這就帶來(lái)一個(gè)問(wèn)題:我需要在控制器里邊可以同時(shí)操作兩個(gè)數(shù)據(jù)庫(kù),而且這兩個(gè)庫(kù)毫不相干!
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁(yè)面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問(wèn)控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語(yǔ)言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語(yǔ)言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說(shuō)明:
PHP教程-php 無(wú)限分類實(shí)現(xiàn)方法實(shí)例代碼
。