PHP recursive algorithm PHP recursive function infinite classification
Release: 2016-07-25 08:54:02
Original
1017 people have browsed it
-
-
< - /**
- * Function: Query all categories to generate Tree menu
- * @param int $pid parent ID, query starts from the top level by default
- */
- function toTree($pid=0){
- //Query all top categories
- //Not much to say about the database connection here
- $model=M('Category'); Instantiate the model
- //Query map conditions
- $map=array(
- 'pid'=>$pid,
- );
- //Query
- $data=$model- >where($map)->select();
- //Define a new array to store the generated html tree menu
- $html_array=array();
- //Loop classification
- $html='';
- $padding=0; //Indentation
- foreach($data as $k=>$v){
- //Indentation is implemented based on the value of the path field
- $path=$v['path'];
- if( $path&&strpos($v['path'],'-')){
- $path_array=@explode('-',$v['path']);
- $count=count($path_array)-1;
- $padding=$count*20; //The next level classification is indented by 20 pixels
- }
- //Current classification data html
- $data_array[]='
- '.$v['name'].'
- ';< ;/p>
//Recursively start to search for lower-level categories
- $data_array[]=toTree($v['id']);//Recurse using the ID of the current category as the parent ID
- }
- / /Foreach loop ends and merges classified html arrays
- $html.=implode('',$data_array());
- $html.='';
- //HTML tree menu construction is completed, it’s that simple, so easy!
- return $html;
- }
-
Copy code
|
Statement of this Website
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
Latest Articles by Author
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31