Maison php教程 php手册 PHP如何通过传引用的思想实现无限分类(代码简单)

PHP如何通过传引用的思想实现无限分类(代码简单)

Jun 06, 2016 pm 07:41 PM

本文给大家介绍php引用传递,如何通过引用出的思想实现无限分类,代码超简单,需要的朋友可以借鉴下

无限级分类,主要是通过储存上级分类的id以及分类路径来实现

在我的Simpla中,,用到了无限分类,使用了PHP的传引用思想实现无限分类的方法,可以完美展示类似这样的分类模式。

id   pid   name
1    0     四川
2    0     重庆
3    1     成都
4    1     绵阳
5    3     高新区

代码如下所示:

/** * 数组变成无限级分类--传引用思想 * @param array $items * @return array */ public static function get_tree($orig) { //解决下标不是1开始的问题 $items = array(); foreach ($orig as $key => $value) { $items[$value[‘id‘]] = $value; } //开始组装 $tree = array(); foreach ($items as $key => $item) { if ($item[‘pid‘] == 0) { //为0,则为1级分类 $tree[] = &$items[$key]; } else { if (isset($items[$item[‘pid‘]])) { //存在值则为二级分类 $items[$item[‘pid‘]][‘child‘][] = &$items[$key]; //传引用直接赋值与改变 } else { //至少三级分类 //由于是传引用思想,这里将不会有值 $tree[] = &$items[$key]; } } } return $tree; }

以上内容很简单吧,如有错误或者更好的方法,希望可以相互交流。谢谢。!

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

Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD

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)