php無限分類

無限循環

1.需要套2個foreach

2.2個foreach結構一樣

純代碼獲取數據

public function CycleData($parent_id=0){$where['parent_id']= $parent_id;$res = $this->m->where($where)->field('id,name')->select();foreach($res as $k=>$v){$result[$v['id']]['id'] = $v['id'];$result[$v['id']]['name'] = $v['name'];$r = $this->GametypeOpt($v['id']);foreach($r as $kk=>$vv){$result[$vv['id']]['id']     = $vv['id'];$result[$vv['id']]['name']     = "-|  ".$vv['name'];}}    return $result;}

?

案例

// 無限循環數據public function CycleData($parent_id=0){$where['parent_id']= $parent_id;$res = $this->m->where($where)->field('id,name')->select();foreach($res as $k=>$v){$result[$v['id']]['id'] = $v['id'];$result[$v['id']]['name'] = $v['name'];//$opt[$v['id']] .= "<option value='".$v['id']."'>".$v['name']."</option>";
            $r = $this->CycleData($v['id']);foreach($r as $kk=>$vv){$result[$vv['id']]['id']     = $vv['id'];$result[$vv['id']]['name']     = "&nbsp;&nbsp;&nbsp;&nbsp;|-&nbsp;&nbsp;".$vv['name'];//$opt[$vv['id']] .= "<option value='".$vv['id']."'>".$vv['name']."</option>";
            }}    return $result;}// 無限循環optpublic function GametypeOpt($parent_id=0,$val){$list = $this->CycleData($parent_id);$opt .= "<option value='0'>頂級分類</option>";foreach($list as $k=>$v){if($v['id'] = $val){$opt .= "<option value='".$v['id']."' selected='selected'>".$v['name']."</option>";}else{$opt .= "<option value='".$v['id']."'>".$v['name']."</option>";                        }}return $opt;    }

完美代碼

public function CycleData($parent_id=0){$res = $this->Catedata($parent_id);if(empty($res)) return false;foreach($res as $k=>$v){$result[$v['id']]['id'] = $v['id'];$result[$v['id']]['name'] = $v['name'];$result[$v['id']]['parent_id'] = $v['parent_id'];$rf = $this->CycleData($v['id']);if($rf){foreach($rf as $k=>$vv){$result[$vv['id']]['id'] = $vv['id'];$result[$vv['id']]['name'] = "   |- ".$vv['name'];$result[$vv['id']]['parent_id'] = $vv['parent_id'];}}}return $result;}

?

?

顯示數組格式

array('1' => array('id' => '1','parent_id' => '0','name' =>'頂級分類一'),'2' => array('id' => '2','parent_id' => '1','name' =>'   |-    二級分類一'),'4' => array('id' => '4','parent_id' => '2','name' =>'    |-      |-     三級分類一'),'5' => array('id' => '1','parent_id' => '0','name' =>'頂級分類一'),'3' => array('id' => '3','parent_id' => '5','name' =>'    |-     三級分類一'),);

?

?

格式

Array
([1] => Array([id] => 1[name] => 1[child] => Array([3] => Array([id] => 3[name] => 23523[child] => Array([2] => Array([id] => 2[name] => 234234[child] => )))))[5] => Array([id] => 5[name] => 234234[child] => Array([4] => Array([id] => 4[name] => 12302[child] => ))))

?

?php代碼

public function CycleData($parent_id=0){$where['parent_id']= $parent_id;$res = db('category')->where($where)->select();if(empty($res)) return false;foreach($res as $k=>$v){$result[$v['id']]['id'] = $v['id'];$result[$v['id']]['name'] = $v['name'];$result[$v['id']]['child']  = $this->CycleData($v['id']);}return $result;}

?

轉載于:https://www.cnblogs.com/wesky/p/5607365.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374466.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374466.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374466.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

動態網頁數據的采集方案

我在上一篇文章中介紹了使用ScrapySharp快速從網頁中采集數據&#xff0c;這種方式是通過直接發送的Http請求來獲取的原始頁面信息&#xff0c;對于靜態網頁非常有效&#xff0c;但還有許多網站中的頁面內容并非全部存放在原始的頁面中&#xff0c;很多內容是通過javascript來動…

r語言ggplot2 多線圖繪制圖例_plotnine: Python版的ggplot2作圖庫

騰訊課堂 | Python網絡爬蟲與文本數據分析同樣的基本作圖任務&#xff0c;plotnine比matplotlib和seaborn代碼量少&#xff0c;更美觀。所以我又重新發一遍&#xff0c;大家可以先收藏起來&#xff0c;后面總有用到的時候~R語言的ggplot2繪圖能力超強&#xff0c;python雖有mat…

單元和集成測試的代碼覆蓋率

我最近在一個寵物項目中著手構建自動化的UI&#xff08;集成&#xff09;測試以及普通的單元測試。 我想將所有這些集成到我的Maven構建中&#xff0c;并提供代碼覆蓋率報告&#xff0c;以便我可以了解測試覆蓋率不足的區域。 我不僅發布了項目的源代碼&#xff0c;還整理了一個…

javascript事件與event對象的屬性

javascript事件列表解說事件瀏覽器支持解說一般事件onclickIE3、N2鼠標點擊時觸發此事件ondblclickIE4、N4鼠標雙擊時觸發此事件onmousedownIE4、N4按下鼠標時觸發此事件onmouseupIE4、N4鼠標按下后松開鼠標時觸發此事件onmouseoverIE3、N2當鼠標移動到某對象范圍的上方時觸發此…

感想

讀完三篇文章看到了前輩們的努力與堅持和對各自的學科的熱愛&#xff0c;以及各位前輩的奮斗的艱苦環境&#xff0c;我與那些前輩相比也許還達不到前輩們的那種級別&#xff0c;但是我的學習的條件卻比那些前輩們好的多&#xff0c;看完前輩們的奮斗史&#xff0c;以及前輩們的…

python學生分布_Python數據分析實戰之分布分析

前言 本文的文字及圖片來源于網絡,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯系我們以作處理。 作者&#xff1a;嚴小樣兒 分布分析法&#xff0c;一般是根據分析目的&#xff0c;將數據進行分組&#xff0c;研究各組別分布規律的一種分析方法。…

使用Spring Security 3.1保護RESTful Web服務,第3部分

1.概述 本教程顯示了如何使用Spring和基于Java的Spring Security 3.1來保護REST服務 。 本文將重點介紹如何使用“登錄和Cookie”方法專門針對REST API設置安全配置。 2. Spring Security的體系結構完全基于Servlet過濾器&#xff0c;因此&#xff0c;在HTTP請求處理方面&…

一次完整的HTTP請求所經歷的7個步驟

HTTP通信機制是在一次完整的HTTP通信過程中&#xff0c;Web瀏覽器與Web服務器之間將完成下列7個步驟&#xff1a; 1、建立TCP連接 在HTTP工作開始之前&#xff0c;Web瀏覽器首先要通過網絡與Web服務器建立連接&#xff0c;該連接是通過TCP來完成的&#xff0c;該協議與IP協議共…

jQuery基礎--樣式篇(3)

1.jQuiery對象與DOM對象   對于剛剛接觸jQuery的初學者&#xff0c;我們要清楚認識一點&#xff1a;jQuery對象與DOM對象是不一樣的。可能一時半會分不清楚哪些是jQuery對象&#xff0c;哪些是DOM對象&#xff0c;下面重點介紹一下jQuery對象&#xff0c;以及兩者相互間的轉換…

hls fifo_HLS優化方法DATAFLOW你用了嗎

上期內容&#xff1a;異步跨時鐘域電路該怎么約束DATAFLOW作為HLS的一種優化方法&#xff0c;對于改善吞吐率(Throughput)、降低延遲(Latency)非常有效。DATAFLOW的作用對象DATAFLOW可以作用于函數&#xff0c;也可以作用于for循環。如下圖所示(圖片來源Figure62, Figure 63, u…

Java 8虛擬擴展方法

我一直關注Java 8 Lambda表達式項目的發展已經有一段時間了&#xff0c;我對其當前的進展狀態感到非常興奮。 我發現的最新“易于理解”的演示文稿是這樣的&#xff1a; http://blogs.oracle.com/briangoetz/resource/devoxx-lang-lib-vm-co-evol.pdf 現在&#xff0c;作為一名…

python爬蟲 庫_七款必備的Python爬蟲庫,你知道幾個?

很多你需要的信息數據都是在網站內&#xff0c;雖然有些網站的數據會以整潔、結構化的形式呈現&#xff0c;但大部分網站卻無法做到這樣。因此&#xff0c;當你想要獲得一些數據的時候&#xff0c;你需要一些爬蟲工具幫助抓取&#xff0c;然后再對其進行分析。今天&#xff0c;…

62個Android Studio小技巧合集

轉載&#xff1a; 原文鏈接&#xff1a;http://laobie.github.io/android/2016/02/14/android-studio-tips.html轉載于:https://www.cnblogs.com/kesteler/p/5618490.html

在Hibernate,EhCache,Quartz,DBCP和Spring中啟用JMX

繼續使用JMX的過程&#xff08;請參閱&#xff1a; 人類JMX &#xff09;&#xff0c;我們將學習如何在一些流行的框架中啟用JMX支持&#xff08;通常是統計和監視功能&#xff09;。 這些信息大部分都可以在項目的主頁上找到&#xff0c;但是我決定在收集這些信息的同時&#…

二叉樹遍歷(前中后)

二叉樹前序遍歷&#xff1a; /*** Definition for binary tree* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:vector<int> preorderTravers…

python語言程序設計實踐教程答案實驗六_Python程序設計實踐教程

書名&#xff1a;Python程序設計實踐教程 定價&#xff1a;29.8 ISBN&#xff1a;9787115532602 作者&#xff1a;儲岳中 薛希玲 版次&#xff1a;*1版 出版時間&#xff1a;2020-04 內容提要&#xff1a; 本書是Python語言程序設計的配套實踐教材&#xff0c;分為三部分&#…

400多萬微信用戶如何“變現”?凱叔說了五大秘訣與教訓

凱叔&#xff0c;原名王凱&#xff0c;自媒體“凱叔講故事”創始人&#xff0c;近日在獅享家班委會上做了分享&#xff0c;全是實實在在的實驗性方法論。以下是王凱的分享內容&#xff0c;整理 / 垅青 我講的主題叫“基于內容的MVP探索”&#xff0c;MVP是什么東西&#xff1f;…

使用dbUnit,JSON,HSQLDB和JUnit規則進行數據庫單元測試

在本周TDD課程的運行中&#xff0c;我認為編寫一些夾具以簡化dbUnit的使用將很有趣。 我最初的想法只是教dbUnit有關JSON的知識&#xff0c;但事實證明Lieven Doclo已經做到了。 因此&#xff0c;我決定更進一步&#xff0c;還將dbUnit與JUnit Rules結合起來&#xff0c;并提供…

Codeforces Round #321 (Div. 2) E. Kefa and Watch 線段樹hash

E. Kefa and Watch Time Limit: 1 Sec Memory Limit: 256 MB 題目連接 http://codeforces.com/contest/580/problem/EDescription One day Kefa the parrot was walking down the street as he was on the way home from the restaurant when he saw something glittering by…

python文字游戲源代碼求年紀_Python實現猜年齡游戲代碼實例

1. 在猜年齡的基礎上編寫登錄、注冊方法&#xff0c;并且把猜年齡游戲分函數處理&#xff0c;如 2. 登錄函數 3. 注冊函數 4. 猜年齡函數 5. 選擇獎品函數 代碼如下 import json real_age 18 prize_list [好迪洗發水, 綠箭俠, 小豬佩奇, 布娃娃, 再來一次!] import random us…