gpt4 book ai didi

php - 一张mysql表中的类别和子类别

转载 作者:行者123 更新时间:2023-11-29 04:00:15 25 4
gpt4 key购买 nike

因此,我无法用最简单的方法从sql表中获取类别和子类别。
这就是我桌子的样子:
enter image description here
这是我想用mysql输出的:
如果有人能帮我,那就太好了!

最佳答案

可以使用类似于以下示例的递归函数:

// Recursive function
function getList($rows, $id=0){

// Start a new list
$newList = null;

foreach($rows as $key => $row) {
if ($row['parent_id'] == $id) {
// Add an UL tag when LI exists
$newList == null ? $newList = "<ul>" : $newList;
$newList .= "<li>";
$newList .= "<a href=\"\">{$row['category']}</a>";
// Find childrens
$newList .= getList(array_slice($rows,$key),$row['id']);
$newList .= "</li>";
}
}
// Add an UL end tag
strlen($newList) > 0 ? $newList .= "</ul>" : $newList;

return $newList;
}

// Your database registers
$rows = [
['id'=>1,'category'=>'Indland','parent_id'=>0],
['id'=>2,'category'=>'Udland','parent_id'=>0],
['id'=>3,'category'=>'Sport','parent_id'=>0],
['id'=>4,'category'=>'Handbold','parent_id'=>3],
['id'=>5,'category'=>'Fodbold','parent_id'=>3],
['id'=>6,'category'=>'Sample','parent_id'=>4]
];

print_r(getList($rows));

但它只适用于有序行。

关于php - 一张mysql表中的类别和子类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31949292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com