Home >Backend Development >PHP Tutorial >Infinitus seven-core water purifier uses php+mysql to realize infinite classification | tree display classification relationship

Infinitus seven-core water purifier uses php+mysql to realize infinite classification | tree display classification relationship

WBOY
WBOYOriginal
2016-07-29 08:35:041053browse

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;
}


Where $this->sql object is a sql operation class object, and the re_datas() function returns the found array, sql_numrows () function returns the queried number
 Calling method: $sort_list = sort_list($sort_list,0,1);
 The above is my personal thoughts, I hope you can give me some advice

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.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn