How to loop query subcategories in php: 1. You need to create a database and a simple classification table; 2. You need to fill in some sample data into the category table; 3. Start writing PHP code to loop query subcategories. Classification; 4. Establish a connection with the database; 5. Check whether the connection is successful; 6. Define a function for recursively querying subcategories; 7. Recursively query subcategories; 8. Query top-level categories; 9. Call the function to query subcategories. ;10. There is no classified data; 11. Just close the database connection.
The operating environment of this tutorial: windows10 system, php8.1.3 version, DELL G3 computer.
In PHP, we can use loops to query subcategories. In the following example, we will use a simple category table as an example database and query the subcategories through a loop.
1. We need to create a database and a simple classification table. We can use the following SQL statement to create a table:
CREATE TABLE categories ( id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), parent_id INT(11) );
2. We need to fill in some sample data into the classification table. We can use the following SQL statement to fill in the data:
INSERT INTO categories (name, parent_id) VALUES ('电子设备', NULL), ('手机', 1), ('电脑', 1), ('平板电脑', 1), ('苹果手机', 2), ('安卓手机', 2), ('华为手机', 2), ('戴尔电脑', 3), ('联想电脑', 3), ('iPad', 4), ('Surface', 4);
3. We can start writing PHP code to query subcategories in a loop. The following is a simple sample code:
// 建立与数据库的连接(请根据自己的数据库情况修改连接信息) $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(); ?>
In the above code, we first connect to the database, and then define a function querySubcategories to recursively query subcategories. After that, we query the top category and call this function to query its subcategories. Finally, we close the database connection.
Through the above code, we can query subcategories in a loop and output the results to the page.
Summary:
Using loop query subcategories is a common requirement. By using recursion in PHP, we can easily query all subcategories and process them flexibly. In practical applications, we can further process and display the query results as needed
The above is the detailed content of How to loop query subcategories in php. For more information, please follow other related articles on the PHP Chinese website!