Heim  >  Artikel  >  Backend-Entwicklung  >  So schleifen Sie Abfrage-Unterkategorien in PHP ab

So schleifen Sie Abfrage-Unterkategorien in PHP ab

zbt
zbtOriginal
2023-08-04 15:39:45971Durchsuche

So erstellen Sie eine Schleife für Unterkategorien in PHP: 1. Sie müssen eine Datenbank und eine einfache Kategorietabelle erstellen. 2. Sie müssen einige Beispieldaten in die Kategorietabelle eingeben. 3. Beginnen Sie mit dem Schreiben von PHP-Code, um Unterkategorien in einer Schleife zu erstellen. 4. Stellen Sie eine Verbindung mit der Datenbank her. 6. Definieren Sie eine Funktion zum rekursiven Abfragen von Unterkategorien. 9. Rufen Sie die Funktion auf, um Unterkategorien abzufragen 10. Keine klassifizierten Daten. 11. Schließen Sie einfach die Datenbankverbindung.

So schleifen Sie Abfrage-Unterkategorien in PHP ab

Die Betriebsumgebung dieses Tutorials: Windows 10-System, PHP8.1.3-Version, DELL G3-Computer.

In PHP können wir Schleifen verwenden, um Unterkategorien abzufragen. Im folgenden Beispiel verwenden wir eine einfache Kategorietabelle als Beispieldatenbank und fragen die Unterkategorien über eine Schleife ab.

1. Wir müssen eine Datenbank und eine einfache Klassifizierungstabelle erstellen. Wir können die folgende SQL-Anweisung verwenden, um eine Tabelle zu erstellen:

CREATE TABLE categories (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
parent_id INT(11)
);

2. Wir müssen einige Beispieldaten in die Klassifizierungstabelle füllen. Wir können die folgende SQL-Anweisung verwenden, um die Daten einzugeben:

INSERT INTO categories (name, parent_id) VALUES
('电子设备', NULL),
('手机', 1),
('电脑', 1),
('平板电脑', 1),
('苹果手机', 2),
('安卓手机', 2),
('华为手机', 2),
('戴尔电脑', 3),
('联想电脑', 3),
('iPad', 4),
('Surface', 4);

3. Wir können mit dem Schreiben von PHP-Code beginnen, um Unterkategorien in einer Schleife abzufragen. Das Folgende ist ein einfacher Beispielcode:

// 建立与数据库的连接(请根据自己的数据库情况修改连接信息)
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "test";
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 定义一个函数,用于递归查询子分类
function querySubcategories($parent_id, $conn) {
$sql = "SELECT id, name FROM categories WHERE parent_id = $parent_id";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo $row["name"] . "
";
// 递归查询子分类
querySubcategories($row["id"], $conn);
}
}
}
// 查询顶级分类
$query = "SELECT id, name FROM categories WHERE parent_id IS NULL";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo $row["name"] . "
";
// 调用函数查询子分类
querySubcategories($row["id"], $conn);
}
} else {
echo "没有任何分类数据";
}
// 关闭数据库连接
$conn->close();
?>

Im obigen Code stellen wir zunächst eine Verbindung zur Datenbank her und definieren dann eine Funktion querySubcategories, um Unterkategorien rekursiv abzufragen. Danach fragen wir die oberste Kategorie ab und rufen diese Funktion auf, um ihre Unterkategorien abzufragen. Abschließend schließen wir die Datenbankverbindung.

Mit dem obigen Code können wir Unterkategorien in einer Schleife abfragen und die Ergebnisse auf der Seite ausgeben.

Zusammenfassung:

Die Verwendung von Schleifen zum Abfragen von Unterkategorien ist eine häufige Anforderung. Durch die Verwendung der Rekursion in PHP können wir alle Unterkategorien einfach abfragen und flexibel verarbeiten. In praktischen Anwendungen können wir die Abfrageergebnisse bei Bedarf weiterverarbeiten und anzeigen

Das obige ist der detaillierte Inhalt vonSo schleifen Sie Abfrage-Unterkategorien in PHP ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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
Vorheriger Artikel:Was sind PHP-Websites?Nächster Artikel:Was sind PHP-Websites?