thinkphpの良い方法

Jun 13, 2016 pm 12:37 PM
data list tree

thinkphp の良い方法

PHP では分類ツリーがよく使われます。次の関数は非常に便利で便利です。

function list_to_tree($list, $pk='id',$pid = 'pid',$child = '_child',$root=0) {
    // 创建Tree
    $tree = array();
    if(is_array($list)) {
        // 创建基于主键的数组引用
        $refer = array();
        foreach ($list as $key => $data) {
            $refer[$data[$pk]] =& $list[$key];
        }
        foreach ($list as $key => $data) {
            // 判断是否存在parent
            $parentId = $data[$pid];
            if ($root == $parentId) {
                $tree[] =& $list[$key];
            }else{
                if (isset($refer[$parentId])) {
                    $parent =& $refer[$parentId];
                    $parent[$child][] =& $list[$key];
                }
            }
        }
    }
    return $tree;
}
ログイン後にコピー



このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPでRedisリスト操作を実装する方法 PHPでRedisリスト操作を実装する方法 May 26, 2023 am 11:51 AM

リスト操作 //リストの先頭から値を挿入します。 $ret=$redis->lPush('city','guangzhou');//リストの末尾から値を挿入します。 $ret=$redis->rPush('city','guangzhou');//リストの指定範囲内の要素を取得します。 0 はリストの最初の要素を表し、-1 は最後の要素を表し、-2 は最後から 2 番目の要素を表します。 $ret=$redis->l

ツリーを使用して、表示用のファイル ディレクトリ ツリーを生成します。 ツリーを使用して、表示用のファイル ディレクトリ ツリーを生成します。 Mar 01, 2024 pm 05:46 PM

Tree は、ディレクトリの内容をツリー形式で再帰的にリストするコマンド ライン ツールです。これにより、すべてのディレクトリ、サブディレクトリ、およびファイルが階層形式でリストされ、それによってファイルとフォルダの組織構造が視覚的に表示されます。 Windows および Linux システムでの Tree のインストールと使用方法 Linux での Tree のインストールと使用 Linux での Tree のインストール: aptupdate&&aptinstalltree 以下は、tree コマンドの一般的な使用方法です。 #指定したパスの下のディレクトリ ツリーを表示しますtree/d/temp#最大表示深度を制限しますtree-L3#ディレクトリのみを表示し、ファイルは表示しませんtree-d#隠しファイルとディレクトリを含めて表示しますtr

JavaでJSONArrayをリストに変換する方法 JavaでJSONArrayをリストに変換する方法 May 04, 2023 pm 05:25 PM

1: JSONArray を List にJSONArray 文字列を List に//JSONArray を初期化するJSONArrayarray=newJSONArray();array.add(0,"a");array.add(1,"b");array.add(2,"c") ; Listlist=JSONObject.parseArray(array.toJSONString(),String.class);System.out.println(list.to

リストをnumpyに変換する方法 リストをnumpyに変換する方法 Nov 22, 2023 am 11:29 AM

リストを numpy に変換する方法: 1. numpy.array() 関数を使用します。関数の最初のパラメータは、1 次元または多次元のリストであるリスト オブジェクトです。2. numpy.asarray( ) 関数は、入力リストのデータ型を使用するために最善を尽くします; 3. numpy.reshape() 関数を使用して、1 次元リストを多次元 NumPy 配列に変換します; 4. numpy.fromiter を使用します() 関数の場合、関数の最初のパラメータは反復可能なオブジェクトです。

C# で List.Sort 関数を使用してリストを並べ替える方法 C# で List.Sort 関数を使用してリストを並べ替える方法 Nov 17, 2023 am 10:58 AM

C# で List.Sort 関数を使用してリストを並べ替える方法 C# プログラミング言語では、リストを並べ替える必要があることがよくあります。 List クラスの Sort 関数は、この目的のために設計された強力なツールです。この記事では、C# で List.Sort 関数を使用してリストを並べ替える方法を紹介し、読者がこの関数をより深く理解し、適用できるように具体的なコード例を示します。 List.Sort 関数は List クラスのメンバー関数であり、リスト内の要素を並べ替えるために使用されます。この関数は受信します

Python で list.sort() がソートされたリストを返さないのはなぜですか? Python で list.sort() がソートされたリストを返さないのはなぜですか? Sep 18, 2023 am 09:29 AM

例 この例では、続行する前に、まず list.sort() の使用法を確認します。ここでは、リストを作成し、sort() メソッドを使用して昇順に並べ替えています - #CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)#リストを昇順で並べ替えますmyList .sort(

Javaで配列をリストに変換する方法 Javaで配列をリストに変換する方法 Apr 19, 2023 am 09:13 AM

1. 最も一般的な方法 (必ずしも最良であるとは限りません) は、Arrays.asList(strArray) を使用することです。配列をリストに変換した後は、リストの追加または削除はできません。リストの確認と変更のみが可能です。それ以外の場合は、例外がスローされます。 。キーコード: Listlist=Arrays.asList(strArray);privatevoidtestArrayCastToListError(){String[]strArray=newString[2];Listlist=Arrays.asList(strArray);//変換されたリストにデータを挿入 list.add( 「1」

Java の基本における List の一般的なメソッドとは何ですか Java の基本における List の一般的なメソッドとは何ですか May 14, 2023 am 10:16 AM

1. List インターフェイスの概要 List は順序付けられたコレクションであり、反復可能なコレクションです。 Collection インターフェイスを継承しており、List コレクション内に繰り返し要素を出現させることができ、インデックス (添え字) を介して指定した位置の要素にアクセスできます。 2. 共通メソッドの一覧 - voidadd(intindex, Obejcelement) メソッド 1. voidadd(intindex, Obejcelement) メソッドは、指定された位置に要素要素を挿入し、後続の要素を 1 要素前に移動します。 2.voidadd(intindex,Obejctelemen

See all articles