Home >Backend Development >PHP Tutorial >Infinitus seven-core water purifier uses php+mysql to realize infinite classification | tree display classification relationship
Unlimited classification is mainly achieved by storing the id and classification path of the upper-level classification. Since the structure of the data is simple, to display the classification relationship in a tree, I can only think of using recursion to implement it.
Unlimited classification is mainly achieved by storing the id and classification path of the upper-level classification. Since the data structure is simple, I want to display the classification relationship in a tree shape. I can only think of using recursion to implement it. The following is the classification data table structure and a tree display function written by myself. What is wrong? I hope everyone can point it out.
Table structure: The id field is the category identifier, the name field is the category name, the father_id field is the id of the parent category to which it belongs, the path field is the category path (storing the collection of ancestors of the category), isdir determines whether it is a directory (1 means yes, 0 is no).
Display function:
Copy code The code is as follows:
//$count is the classification level
sort_list($str,$fatherid,$count)
{
$rs = $this->sql-> ;re_datas("select * from sort where father_id = fatherid");
$num = $this->sql->sql_numrows();
$i=0;
$n = 1;
while(isset($ rs[$i]))
{
$name = "";
for($n = 1; $n < $count ; $n++)
{
$name.="│ ";
}
if( $i+1==$num)
{
$name.="└─".$rs[$i][name];
}
else
{
$name.="└─".$rs[ $i][name];
}
if($rs[$i][isdir])
{
$str.="".$name."< ;/span>";
}
else
{
$str.=$name";
}
$temp = $count+1;
$str = $this->sort_list($str,$rs[$ i][id],$temp);
$i++;
}
return $str;
}
The above introduces Infinitus seven-core water purifier php+mysql to achieve infinite classification | tree display classification relationship, including the content of Infinitus seven-core water purifier. I hope friends who are interested in PHP tutorials can learn from it. help.