マルチレベル配列の走査問題

WBOY
リリース: 2016-06-23 13:27:56
オリジナル
1101 人が閲覧しました

PHP 初心者の方に質問です。再帰によって従業員のすべての部下 (部下の部下を含む) を取得しました。 print_r ($sub) の効果は次のとおりです。必要なのは、関数を作成し、このマルチレベル配列を走査し、次のような新しい 1 次元配列を生成することです:

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                                (                                )                        )                )        ))
ログイン後にコピー


これは配列の基本的な応用だと感じますが、私の脳はショートしていて、ずっと分からなかったのでアドバイスを頂ければ幸いです、よろしくお願いします。



ディスカッション(解決策)への返信

皆さんは連休はお休みですか?難しい人は残業しなければなりません。 。

新しい配列値を読み取って割り当てるには、foreach(xxx as key=>value) を使用します。

新しい配列値を読み取って割り当てるには、foreach(xxx as key=>value) を使用します。

これは第 1 レベルの要素のみを読み取ることができ、第 2 レベル以降の要素は失われます。 。

もちろん、再帰によって生成された場合は再帰的に削減する必要があります


再帰によって生成された場合は、もちろん再帰的に削減する必要があります

はい、やはり再帰変数とグローバル変数を使用する必要があります。完了しました

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート