Die Implementierungsmethode dieses Artikels für das PHP-Dropdown-Listenmenü für unendliche Klassifizierung wird mit dem vorherigen Artikel [PHP-Methode für den Entwurf von unendlichen Klassifizierungsdaten (1) für Datentabellen ] kombiniert. Das Beispiel wird für jeden ausführlich erklärt werden.
PHP Unlimited Classification ist eigentlich eine Klassifizierungstechnik. Jede Technik wird sehr einfach sein, solange wir ihr Implementierungsprinzip beherrschen, und das Prinzip der unendlichen Klassifizierung von PHP ist das Prinzip der Rekursion.
Relevante Wissenspunkte zur Rekursion finden Sie in [Wie implementiert man rekursive Sortierung in PHP? 】Dieser Artikel wurde bereits vorgestellt. Freunde, die mehr wissen möchten, können darauf verweisen.
Wie im vorherigen Artikel erwähnt, muss die unendliche PHP-Klassifizierung in Kombination mit einer Datenbank implementiert werden, und diese Datenbank muss die beiden Felder id und pid haben. (pid stellt die ID der oberen Ebene dar)
Im Folgenden stellen wir die Implementierungsmethode der PHP-unbegrenzten Klassifizierung durch einen einfachen Datentabellenmodus vor.
Eine einfache Klassifizierungsdatentabelleninformation lautet wie folgt:
Dropdown-Liste für die Implementierung unendlicher PHP-Klassifizierungen Das Codebeispiel lautet wie folgt:
<?php $host = "127.0.0.1"; $user = "root"; $password = "root"; $dbName = "php"; $link = mysqli_connect($host, $user, $password, $dbName); function getList($pid = 0, &$result = array(), $spac = 0) { global $link; $spac = $spac + 2;//标题前空格重复的次数 //根据父id查找数据 $sql = "select * from sort WHERE pid=$pid"; //发送sql语句 $res = mysqli_query($link, $sql); //判断$row里的值是否为空然后再循环 while ($row = mysqli_fetch_assoc($res)) { //str_repeat 重复括号里的字符串,后面跟的是次数 $row['title'] = str_repeat(' ', $spac) . '|--' . $row['title']; //把数组赋给 $result $result[] = $row; //递归调用,自己调用自己 这个括号里的参数和上面getList($pid=0...)是一样的$row['id']==$pid=0; getList($row['id'], $result, $spac); } return $result;//把结果返回出去 } $rs = getList();//使用方法 echo "<pre class="brush:php;toolbar:false">"; //print_r($rs);//打印方法结果 echo "<select>"; foreach ($rs as $k => $v) { echo "<option value =>{$v['title']}</option>"; } echo "</select>";
Der endgültige Effekt dieses Codes ist wie folgt:
Im obigen Code definieren wir eine getList-Methode und legen Sie den Pass fest. Geben Sie drei optionale Parameter ein, nämlich einen Standard-$pid, einen referenzierten Array-Parameter &$result und eine Leerzeichenanzahl $spac. Anschließend wird die Variable $link, die eine Verbindung zur Datenbank herstellt, als globale Variable festgelegt, hauptsächlich damit sie in dieser Methode normal verwendet werden kann.
Die Hauptidee, um den Effekt des obigen Bildes zu erzielen, besteht darin, das Array im Beispiel zu durchlaufen, wenn seine übergeordnete PID mit der obersten Ebene 0 übereinstimmt, den Array-Namen zu extrahieren, ihn erneut zu bearbeiten und hinzuzufügen Setzen Sie das Präfix zurück und übergeben Sie es. Der rekursive Algorithmus ruft sich dann selbst auf, um eine Rekursion abzuschließen. Wenn es beim nächsten Mal eine PID der nächsten Ebene gibt, wird sie weiterhin aufgerufen Die obige Dropdown-Liste kann leicht erreicht werden!
In diesem Artikel geht es um die spezifische Implementierungsmethode der PHP-Dropdown-Liste für unendliche Klassifizierung.
Wenn Sie mehr über PHP erfahren möchten, können Sie der chinesischen PHP-Website folgen PHP-Video-Tutorial, jeder ist herzlich willkommen, sich darauf zu beziehen und zu lernen!
Das obige ist der detaillierte Inhalt vonImplementierungsmethode der Dropdown-Liste in der unendlichen PHP-Klassifizierung (2) (Bild, Text + Video). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!