ホームページ >バックエンド開発 >PHPチュートリアル >PHPは参照渡しのアイデアにより無制限の分類を実装します

PHPは参照渡しのアイデアにより無制限の分類を実装します

WBOY
WBOYオリジナル
2016-06-20 12:46:59751ブラウズ

私の Simpla では無限分類が使用されており、PHP の参照渡しのアイデアを使用して無限分類を実現しています。これにより、このような分類パターンを完全に表示できます。

具体的な実装コードは以下の通りです: エラーやより良い方法があれば、相互に連絡できれば幸いです。

id   pid   name1    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;    }


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