左右の値の無限カテゴリのパス関係を取得します。
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-25 08:50:57
最近、 1 > 2 1 > 2 > 3 1 > 2 > 3 > 4 みたいな表示ができるものが必要なんですが、アルゴリズムが分からないので、かなり遠回りしてしまいました。 Tucao さん、もっと良い方法があるといいですね。
- public function getPaths($nodes)
- {
- $levels = $paths = array();
- // 配列レベルを再編成します
- foreach ($nodes as $id => $node)
- {
- $levels[ $node['level']][$id] = $node;
- }
- for ($i = 0; $i {
- if (is_array($levels[$ i]))
- {
- foreach ($levels[$i] as $level)
- {
- $id = $level['id'];
- $parent_id = $level['parent_id'];
- $parent = $ paths[$parent_id];
- // 親があり、現在のノードに追加されます
- if ($parent)
- {
- $paths[$id] = $parent;
- $paths[$id][] = $level [ 'id'];
- }
- else
- {
- $paths[$id][] = $level['id'];
- }
- }
- }
- }
- return $paths;
- }
コードをコピー
|
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2025-02-26 03:58:14
-
2025-02-26 03:38:10
-
2025-02-26 03:17:10
-
2025-02-26 02:49:09
-
2025-02-26 01:08:13
-
2025-02-26 00:46:10
-
2025-02-25 23:42:08
-
2025-02-25 22:50:13
-
2025-02-25 21:54:11
-
2025-02-25 20:45:11