Maison développement back-end tutoriel php thinkphp中一个良好的方法

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;
}
Copier après la connexion



Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment implémenter l'opération Redis List en php Comment implémenter l'opération Redis List en php May 26, 2023 am 11:51 AM

Opération de liste //Insérer une valeur à partir de l'en-tête de la liste. $ret=$redis->lPush('city','guangzhou');//Insérez une valeur à partir de la fin de la liste. $ret=$redis->rPush('city','guangzhou');//Obtient les éléments dans la plage spécifiée de la liste. 0 représente le premier élément de la liste, -1 représente le dernier élément et -2 représente l'avant-dernier élément. $ret=$redis->l

Utiliser l'arborescence pour générer une arborescence de répertoires de fichiers à afficher Utiliser l'arborescence pour générer une arborescence de répertoires de fichiers à afficher Mar 01, 2024 pm 05:46 PM

tree est un outil de ligne de commande qui répertorie de manière récursive le contenu d'un répertoire dans un format arborescent, de sorte que tous les répertoires, sous-répertoires et fichiers soient répertoriés de manière hiérarchique, affichant ainsi visuellement la structure organisationnelle des fichiers et des dossiers. Voici l'installation et l'utilisation de Tree sous les systèmes Windows et Linux. Installation et utilisation de Tree sous Linux : aptupdate&&aptinstalltree Voici les méthodes courantes d'utilisation de la commande Tree. #Afficher l'arborescence des répertoires sous le chemin spécifié tree/d/temp#Limiter la profondeur d'affichage maximale tree-L3#Afficher uniquement les répertoires mais pas les fichiers tree-d#Afficher y compris les fichiers et répertoires cachés tr

Comment convertir JSONArray en liste en Java Comment convertir JSONArray en liste en Java May 04, 2023 pm 05:25 PM

1:JSONArray转ListJSONArray字符串转List//初始化JSONArrayJSONArrayarray=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

Comment convertir une liste en numpy Comment convertir une liste en numpy Nov 22, 2023 am 11:29 AM

Méthode pour convertir une liste en numpy : 1. Utilisez la fonction numpy.array() Le premier paramètre de la fonction est un objet liste, qui peut être une liste unidimensionnelle ou multidimensionnelle ; ), qui fera de son mieux pour utiliser le type de données de la liste d'entrée ; 3. Utilisez la fonction numpy.reshape() pour convertir la liste unidimensionnelle en un tableau NumPy multidimensionnel 4. Utilisez numpy.fromiter ; (), le premier paramètre de la fonction est un objet itérable.

Pourquoi list.sort() ne renvoie-t-il pas une liste triée en Python ? Pourquoi list.sort() ne renvoie-t-il pas une liste triée en Python ? Sep 18, 2023 am 09:29 AM

Exemple Dans cet exemple, nous examinons d'abord l'utilisation de list.sort() avant de continuer. Ici, nous avons créé une liste et l'avons triée par ordre croissant à l'aide de la méthode sort() - #CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)# Trier les listes par ordre croissant de ma liste .sort(

Comment trier une liste à l'aide de la fonction List.Sort en C# Comment trier une liste à l'aide de la fonction List.Sort en C# Nov 17, 2023 am 10:58 AM

Comment trier une liste à l'aide de la fonction List.Sort en C# Dans le langage de programmation C#, nous avons souvent besoin de trier la liste. La fonction Sort de la classe List est un outil puissant conçu à cet effet. Cet article explique comment utiliser la fonction List.Sort en C# pour trier une liste et fournit des exemples de code spécifiques pour aider les lecteurs à mieux comprendre et appliquer cette fonction. La fonction List.Sort est une fonction membre de la classe List, utilisée pour trier les éléments de la liste. Cette fonction reçoit

Comment convertir un tableau en liste en Java Comment convertir un tableau en liste en Java Apr 19, 2023 am 09:13 AM

1. Le moyen le plus courant (pas nécessairement le meilleur) consiste à utiliser Arrays.asList(strArray). Après avoir converti le tableau en liste, vous ne pouvez pas ajouter ou supprimer la liste, vous pouvez uniquement la vérifier et la modifier, sinon une exception sera levée. . Code clé : Listlist=Arrays.asList(strArray);privatevoidtestArrayCastToListError(){String[]strArray=newString[2];Listlist=Arrays.asList(strArray);//Insérer une donnée dans la liste convertie list.add( " 1"

Quelles sont les méthodes courantes de List dans les bases de Java Quelles sont les méthodes courantes de List dans les bases de Java May 14, 2023 am 10:16 AM

1. Introduction à l'interface List List est une collection ordonnée et une collection répétable. Il hérite de l'interface Collection. Les éléments répétés peuvent apparaître dans la collection List et l'élément à la position spécifiée est accessible via l'index (indice). 2. Liste des méthodes courantes - méthode voidadd (intindex, Obejctelement) 1. La méthode voidadd (intindex, Obejctelement) insère l'élément element à la position spécifiée et déplace l'élément suivant d'un élément en arrière. 2.voidad(intindex,Obejctelemen

See all articles