Heim > Backend-Entwicklung > PHP-Tutorial > Ausführliche Erläuterung zweier Methoden zur Implementierung der stufenlosen rekursiven Klassifizierung in PHP

Ausführliche Erläuterung zweier Methoden zur Implementierung der stufenlosen rekursiven Klassifizierung in PHP

迷茫
Freigeben: 2023-03-06 22:38:02
Original
1245 Leute haben es durchsucht

Zwei Methoden zur Implementierung einer stufenlosen rekursiven Klassifizierung in PHP

Die erste:

/**
*   无级递归分类 TP框架
*   @param   int     $assortPid   要查询分类的父级id
*   @param   mixed   $tag         上下级分类之间的分隔符
*   @return  string  $tree        返回的分类树型结构结果 
*
*/
function recursiveAssort($assortPid, $tag = '')
{   
    $assort = M('goods_class')->where("class_pid = $assortPid")->field('class_id, class_name')->select();
    foreach ($assort as $value) {
        $tree .= &#39;<option value="&#39; . $value[&#39;class_id&#39;] . &#39;">&#39; . $tag . $value[&#39;class_name&#39;] . &#39;</option>&#39;;
        $tree .= recursiveAssort($value[&#39;class_id&#39;], $tag . &#39;&emsp;&#39;);
    }
    return $tree;
}
Nach dem Login kopieren

Zweiter Typ:

/**
    *   利用php的引用传递 CI框架
    *
    */
    public function get_access()
    {
        $access = array();
        $field = &#39;id, pid, method, name, description&#39;;
        $q_access = $this->db->select($field)->get(&#39;access&#39;);
        $q_result = $q_access->result_array();

        if (!empty($q_result)) {
            $items = array();
            foreach ($q_result as $value) {
                $items[$value[&#39;id&#39;]] = $value;
            }
            foreach ($items as $key => $item) {
                if ($item[&#39;pid&#39;] == 0) {
                    $access[] = &$items[$key];
                } else {
                    $items[$item[&#39;pid&#39;]][&#39;sub_access&#39;][] = &$items[$key];
                }
            }
        }
        return $access;
    }
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung zweier Methoden zur Implementierung der stufenlosen rekursiven Klassifizierung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage