10
07月
2023
如果您想使用递归的方式来获取大类下的所有分类,可以这样实现:
```php
connect_error) {
die("数据库连接失败: " . $conn->connect_error);
}
// 获取大类ID
$parentId = $_GET['parent_id']; // 假设通过GET参数获取大类ID
// 递归函数获取子分类
function getSubcategories($conn, $parentId, $level = 0) {
// 根据父类ID查询子分类
$sql = "SELECT * FROM categories WHERE parent_id = $parentId";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出每个子分类
while($row = $result->fetch_assoc()) {
echo str_repeat("--", $level) . "分类ID: " . $row["category_id"]. " - 分类名称: " . $row["category_name"]. "
"; // 递归调用自身获取子分类的子分类 getSubcategories($conn, $row["category_id"], $level + 1); } } } // 调用递归函数获取大类下的所有分类 getSubcategories($conn, $parentId); // 关闭数据库连接 $conn->close(); ?> ``` 上述代码定义了一个名为`getSubcategories`的递归函数,该函数根据给定的父类ID查询子分类,并递归调用自身来获取子分类的子分类。通过增加`$level`参数,可以在输出时进行缩进,以显示分类的层级关系。 调用`getSubcategories`函数并传递大类ID,将打印出大类下的所有分类,并以嵌套的方式显示它们的层级关系。 请确保将`your_username`、`your_password`和`your_database`替换为您自己的数据库凭据和数据库名称。另外,上述代码假设您有一个`categories`表存储您的分类数据,并且该表包含`category_id`、`category_name`和`parent_id`列。
"; // 递归调用自身获取子分类的子分类 getSubcategories($conn, $row["category_id"], $level + 1); } } } // 调用递归函数获取大类下的所有分类 getSubcategories($conn, $parentId); // 关闭数据库连接 $conn->close(); ?> ``` 上述代码定义了一个名为`getSubcategories`的递归函数,该函数根据给定的父类ID查询子分类,并递归调用自身来获取子分类的子分类。通过增加`$level`参数,可以在输出时进行缩进,以显示分类的层级关系。 调用`getSubcategories`函数并传递大类ID,将打印出大类下的所有分类,并以嵌套的方式显示它们的层级关系。 请确保将`your_username`、`your_password`和`your_database`替换为您自己的数据库凭据和数据库名称。另外,上述代码假设您有一个`categories`表存储您的分类数据,并且该表包含`category_id`、`category_name`和`parent_id`列。
免责声明:本内容由金宣创作助手生成,可能存在逻辑不清、乱码等问题,点这里>>使用AI金宣助手高级版(Super),更聪明、更完整、无乱码!
以上内容除特别注明外均来源于网友提问、金宣助手回答,权益归原著者所有,本站仅作效果演示和欣赏之用;
本文标题: php 获取大类下的所有分类 用递归的方式
本文网址: https://www.nhwlfw.com/news-read-9482.html
直通道: 金宣助手
延伸阅读
- 如何借助实验教学提升学生的实验技能和科学研究能力?
- 写一段关于国家安全的介绍文案一百五十字
- 区块链技术可以用来加强物流安全吗?
- AI可以预测未来的发展趋势吗?
- 情绪管理技巧:10个方法帮你保持心理平衡