多級數組遍曆問題

來源:互聯網
上載者:User
PHP新手請教各位一個問題,現已通過遞迴從資料庫中抓出來一個員工的所有下屬(包括下屬的下屬),print_r ($sub)效果如下:
Array(    [0] => User Object        (            [userId] => 365            [name] => aa            [cn_name] => 王A            [job] => A地區銷售工程師            [rep_id] => 368            [sub] => Array                (                )        )    [1] => User Object        (            [userId] => 367            [name] => cc            [cn_name] => 王C            [job] => A地區銷售主管            [rep_id] => 368            [sub] => Array                (                    [0] => User Object                        (                            [userId] => 379                            [name] => mm                            [cn_name] => 黃XX                            [job] => 銷售工程師                            [rep_id] => 367                            [sub] => Array                                (                                    [0] => User Object                                        (                                            [userId] => 381                                            [name] => abc                                            [cn_name] => 張abc                                            [job] => 銷售工程師                                            [rep_id] => 379                                            [sub] => Array                                                (                                                )                                        )                                )                        )                    [1] => User Object                        (                            [userId] => 380                            [name] => xxxx                            [cn_name] => 張XX                            [job] => 銷售工程師                            [rep_id] => 367                            [sub] => Array                                (                                )                        )                )        ))



現在的需求是,寫一個函數,遍曆這個多級數組,然後產生一個新的一維數組,類似這樣:
Array(    [0] => User Object        (            [userId] => 365            [name] => aa            [cn_name] => 王A            [job] => A地區銷售工程師            [rep_id] => 368        )    [1] => User Object        (            [userId] => 367            [name] => cc            [cn_name] => 王C            [job] => A地區銷售主管            [rep_id] => 368        )    [2] => User Object        (            [userId] => 379            [name] => mm            [cn_name] => 黃XX            [job] => 銷售工程師            [rep_id] => 367        )    [3] => User Object        (            [userId] => 381            [name] => abc            [cn_name] => 張abc            [job] => 銷售工程師            [rep_id] => 379        )    [4] => User Object        (            [userId] => 380            [name] => xxxx            [cn_name] => 張XX            [job] => 銷售工程師            [rep_id] => 367         ))


感覺這是數組的基本應用,但是一下腦子短路了,半天沒搞出來,所以求教各位,希望各位大神賜教,拜謝!


回複討論(解決方案)

都下班過節去了嗎?苦逼的還要加班。。

用foreach(xxx as key=>value)讀,新的數組賦值。

用foreach(xxx as key=>value)讀,新的數組賦值。


這個只能讀到第一級元素,第二級以後的就會丟掉了。。

遞迴產生的,當然也要遞迴降維

遞迴產生的,當然也要遞迴降維


恩是的,還是要用遞迴和全域變數才行,已經搞定了,謝謝
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.