Rumah > pembangunan bahagian belakang > tutorial php > php基于concat实现无限分类

php基于concat实现无限分类

墨辰丷
Lepaskan: 2023-03-30 06:46:01
asal
1633 orang telah melayarinya

这篇文章主要介绍了php无限分类使用concat是如何实现的,需要的朋友可以参考下

一、数据库设计

--  
-- Table structure for table `category` 
--  
 
CREATE TABLE `category` ( 
 `id` int(11) NOT NULL auto_increment, 
 `catpath` varchar(255) default NULL, 
 `name` varchar(255) default NULL, 
 PRIMARY KEY (`id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ; 
 
--  
-- Dumping data for table `category` 
--  
 
INSERT INTO `category` VALUES (1, '0', '网站首页'); 
INSERT INTO `category` VALUES (2, '0-1', 'Linux OS'); 
INSERT INTO `category` VALUES (3, '0-1', 'Apache服务器'); 
INSERT INTO `category` VALUES (4, '0-1', 'MySQL数据库'); 
INSERT INTO `category` VALUES (5, '0-1', 'PHP脚本语言'); 
INSERT INTO `category` VALUES (6, '0-1-2', 'Linux 系统教程'); 
INSERT INTO `category` VALUES (7, '0-1-2', 'Linux 网络技术'); 
INSERT INTO `category` VALUES (8, '0-1-2', 'Linux 安全基础'); 
INSERT INTO `category` VALUES (9, '0-1-2-7', 'Linux LAMP'); 
INSERT INTO `category` VALUES (10, '0-1-3-10', 'apache Server');
Salin selepas log masuk

这里说明下,catpath的-链接符号不是固定的,可以选择,;等特殊符号。

二、PHP代码实现

<? 
$conn = mysql_connect ( &#39;localhost&#39;, &#39;root&#39;, &#39;root&#39; ); 
mysql_select_db ( &#39;test&#39;, $conn ); 
mysql_query ( &#39;set names UTF8&#39; ); 
$sql = "select id,concat(catpath,&#39;-&#39;,id) as abspath,name from category order by abspath"; 
$query = mysql_query ( $sql ); 
while ( $row = mysql_fetch_array ( $query ) )  
{ 
  //第一种展示方法 
  //$space = str_repeat ( &#39;    &#39;, count ( explode ( &#39;-&#39;, $row [&#39;abspath&#39;] ) ) - 1 ); 
  //echo $space . $row [&#39;name&#39;] . &#39;<br>&#39;;*/ 
   
  //第二种展示方法 
  $space = str_repeat ( &#39;    &#39;, count ( explode ( &#39;-&#39;, $row [&#39;abspath&#39;] ) ) - 1 ); 
  $option .= &#39;<option value="&#39; . $row [&#39;id&#39;] . &#39;">&#39; . $space . $row [&#39;name&#39;] . &#39;</option>&#39;; 
} 
echo &#39;<select name="opt">&#39; . $option . &#39;</select>&#39;; 
?>
Salin selepas log masuk

MySQL concat函数可以连接一个或者多个字符串

select concat(&#39;颜&#39;,&#39;培&#39;,&#39;攀&#39;)
select `id`,`name`,concat(`id`,&#39;-&#39;,`name`) as iname
Salin selepas log masuk

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php图片缩放及剪切函数

php中session写入数据库的方法

php在线压缩zip文件的方法

Atas ialah kandungan terperinci php基于concat实现无限分类. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan