导航:首页 > 编程语言 > php树形分类

php树形分类

发布时间:2023-08-09 23:43:28

php MYSQL 的多级分类树结构

打开数据库那就不写了。
前几天刚写了一个。你看下


/* 表结构

CREATE TABLE `lh_categroy` (

`id` int(10) NOT NULL auto_increment,

`parentid` int(6) NOT NULL,

`name` varchar(255) NOT NULL,

`keyword` varchar(255) NOT NULL COMMENT '关键字',

`des` varchar(255) NOT NULL COMMENT '描述',

PRIMARY KEY (`id`),

UNIQUE KEY `name` (`name`)

) ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;


*/

/**

* 获得所有栏目排序后的列表

* @return array

*/

function getAllOrderColumns($id = 0) {

global $columns;

$result = array();

if ($id) $result[$id] = $columns[$id];

foreach ($columns as $column) {

if ($column['parentid'] == $id) {

$column['level'] = 0;

$result[$column['id']] = $column;

getColumns($columns, $column['id'], $result, 1);

}

}

return $result;

}


function getColumns($columns, $cid, &$result, $l = 1) {

foreach ($columns as $c) {

if ($c['parentid'] == $cid) {

$c['level'] = $l;

$result[$c['id']] = $c;

getColumns($columns, $c['id'], $result, $l + 1);

}

}

}


$sql = 'select * from lh_categroy';

$query = mysql_query($sql);

while($row = mysql_fetch_assoc($query)){

$columns[]=$row;

}


$fenlei = '';

$fenlei = '<select name="cid" style="width:200px; height:25px;">

<option value="0">请选择分类</option>';

foreach(getAllOrderColumns() as $v){

$v[name] = $v[level] ? ($v[level]==1 ? '&nbsp;&nbsp;|-'.$v[name]:'&nbsp;&nbsp;&nbsp;|-'.$v[name]) : $v[name];

$fenlei .= "<option value='$v[id]'>$v[name]</option>";

}

$fenlei .= '</select>';

echo $fenlei;

㈡ php中数组的分类有哪两种

1、索引数组

有两种创建索引数组的方法:

索引是自动分配的(索引从 0 开始):

$cars=array("porsche","BMW","Volvo");

2、关联数组

关联数组是使用您分配给数组的指定键的数组。

有两种创建关联数组的方法:

$age=array("Bill"=>"35","Steve"=>"37","Elon"=>"43");

(2)php树形分类扩展阅读

实用函数——

有相当多的实用函数作用于数组,参见数组函数一节。

注: unset() 函数允许取消一个数组中的键名。要注意数组将不会重建索引。

<?php

$a = array( 1 => 'one', 2 => 'two', 3 => 'three' );

unset( $a[2] );

/* 将产生一个数组,定义为

$a = array( 1=>'one', 3=>'three');

而不是

$a = array( 1 => 'one', 2 => 'three');

*/

$b = array_values($a);

// Now $b is array(0 => 'one', 1 =>'three')

?>

foreach 控制结构是专门用于数组的。它提供了一个简单的方法来遍历数组。

㈢ php无限极分类查找父级生成树形结构子级在最顶层,怎么办

一般这种问题需要使用嵌套函数,PHP也是支持嵌套函数的,就是不停的调用自身,直到符合条件后退出函数循环,这样就能找出它所有的父级了,在c语言的时候也学过,理解起来还是比较容易的。

㈣ PHP怎么递归

下面我举一个其他的例子,虽然不是族谱,但是原理都是一样的。

在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。
递归,简单的说就是一段程序代码的重复调用,当把代码写到一个自定义函数中,将参数等变量保存,函数中重复调用函数,直到达到某个条件才跳出,返回相应的数据。
Mysql
首先我们准备一张数据表class,记录商品分类信息。表中有三个字段,id:分类编号,主键自增长;title:分类名称;pid:所属上级分类id。
class表结构:

CREATE TABLE IF NOT EXISTS `class` (
`id` mediumint(6) NOT NULL AUTO_INCREMENT,
`title` varchar(30) NOT NULL,
`pid` mediumint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

插入数据后,如图:

如果要输出json格式的数据,则可使用:

echo json_encode($list);

阅读全文

与php树形分类相关的资料

热点内容
pdf猫压缩 浏览:49
数据挖掘分类算法研究 浏览:101
河北航天发票认证服务器地址 浏览:727
阿里程序员绩效录入 浏览:382
eb蜜罐原理及源码 浏览:803
命令界面怎么调大小 浏览:890
公共测试服务器做什么的 浏览:746
湖南网络服务器云空间 浏览:365
做博客需要什么app 浏览:548
查看网站编程语言 浏览:302
我的世界服务器的密码怎么弄 浏览:644
电脑文件夹如何传输视频不压缩 浏览:145
安卓对单片机编程 浏览:728
被加密的txt 浏览:927
单片机汇编调用子程序 浏览:253
小米定位服务器地址 浏览:612
有什么好的学画app 浏览:882
5线4相步进电机单片机控制 浏览:293
linux重启php命令行 浏览:999
加密软件gif 浏览:761