Heim > Backend-Entwicklung > PHP-Tutorial > Wie implementiert man die Infinitus-Klassifizierung in PHP?

Wie implementiert man die Infinitus-Klassifizierung in PHP?

韦小宝
Freigeben: 2023-03-17 15:06:01
Original
1515 Leute haben es durchsucht

Jede unendliche Kategorie muss ihre übergeordnete ID aufzeichnen. Wenn es sich um eine Kategorie der obersten Ebene handelt, ist die übergeordnete ID 0. Auf diese Weise kann sie unabhängig von der Kategorie überprüft werden Geben Sie alle übergeordneten Ebenen an, damit Sie klar erkennen können, zu welcher Kategorie sie gehört und wie tief die Hierarchie ist. Unendliche Kategorie wird auch häufig in Interviews verwendet

Die obige unendliche Klassifizierung verwendet einen rekursiven Algorithmus. Die einfache Erklärung des rekursiven Algorithmus besteht darin, sich selbst aufzurufen.
include PHP
/*
使用的是三种递归中的一种 &
/*
include('Catecontroller.php');//引入连接数据库文件

function getList($pid = 0, &$result = array(), $spac = 0)
{
    $spac = $spac + 2;//标题前空格重复的次数
    $sql = "SELECT * FROM cate WHERE pid= $pid";//根据父id查找数据
    $res = mysql_query($sql);//发送sql语句

    while ($row = mysql_fetch_assoc($res)) {//判断$row里的值是否为空然后再循环
        $row['cate_name'] = str_repeat(' ',$spac).'|--'.$row['cate_name']; //str_repeat 重复括号里的字符串,后面跟的是次数
        $result[] = $row;//把数组赋给 $result
        getList($row['id'],$result,$spac);//递归调用,自己调用自己 这个括号里的参数和上面getList($pid=0...)是一样的$row['id']==$pid=0;
    }
    return $result;//把结果返回出去
}

$rs = getList();//使用方法

var_dump($rs);//打印方法结果
Nach dem Login kopieren

Verwandte Empfehlungen:

PHP unbegrenzter Kategoriebaum [unterstützt die Sortierung von Unterkategorien]

Wie man mehrdimensionale Arrays in PHP rekursiv durchläuft

Erklärung, wie man rekursive PHP-Funktionen aufruft

Das obige ist der detaillierte Inhalt vonWie implementiert man die Infinitus-Klassifizierung in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
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