php怎么循环查询子分类

原创
ithorizon 7个月前 (10-03) 阅读数 112 #PHP

PHP循环查询子分类的实现方法

在PHP开发中,我们频繁会遇到需要查询数据库中的子分类的需求。为了实现这一功能,我们可以使用递归查询的方法。下面将详细介绍怎样使用PHP循环查询子分类。

准备工作

首先,确保你的数据库中有一个存储分类信息的表,例如:

CREATE TABLE category (

id INT AUTO_INCREMENT PRIMARY KEY,

name VARCHAR(50) NOT NULL,

parent_id INT DEFAULT 0

);

其中,id描述分类ID,name描述分类名称,parent_id描述父分类ID。

连接数据库

在起始查询之前,需要先连接到数据库:

$servername = "localhost";

$username = "root";

$password = "password";

$dbname = "myDB";

// 创建连接

$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接

if ($conn->connect_error) {

die("连接未果: " . $conn->connect_error);

}

循环查询子分类

下面是一个递归函数,用于查询子分类:

function getSubCategories($conn, $parent_id = 0) {

$sql = "SELECT * FROM category WHERE parent_id = $parent_id";

$result = $conn->query($sql);

if ($result->num_rows > 0) {

while ($row = $result->fetch_assoc()) {

echo "<h4>" . $row["name"] . "</h4>"; // 输出分类名称

// 递归查询子分类

getSubCategories($conn, $row["id"]);

}

}

}

调用函数并输出因此

现在,我们可以调用getSubCategories函数,起始查询并输出子分类:

getSubCategories($conn);

关闭数据库连接

查询完成后,关闭数据库连接:

$conn->close();

这样,我们就可以通过递归查询的做法输出所有的子分类,并将因此以HTML的<h4>标签格式返回。


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: PHP


热门