博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
标签云的实现代码
阅读量:5129 次
发布时间:2019-06-13

本文共 2151 字,大约阅读时间需要 7 分钟。

 http://huxuemail.web-104.com 

 http://www.cnblogs.com/wuniaoheart/ 

 

数据库中,存放文章的表中有“Tag”字段,用来存放标签。标签之间用“,”分隔。比如“PHP,VB,随笔”。 

下面的实现代码,将标签从数据库中搜出来,并格式化处理,使其以出现的次数为依据显示出不同大小的文字连接。 
其中的细节,不做解释了! 
观念陈、方法笨、效率低的标签云的实现代码如下:

 

1 
";22 $Tags = explode(",",$TagString);23 $n = 1;24 $i = 0;25 $Continue = TRUE;26 //echo $Tags[1]."
";27 //in case no-label's article28 while($Tags[$n] OR $Tags[++$n] OR $Tags[++$n] ){29 $EachTag = $Tags[$n++];30 //echo $EachTag."
";31 $Continue = TRUE;32 for($i=0;$Continue;$i++){33 if( $EachTagStr[$i][0] ) {34 if( $EachTagStr[$i][0] == $EachTag ){35 $EachTagStr[$i][1]++;36 $Continue = FALSE;37 }38 else {39 if( $EachTagStr[$i+1][0] ) $Continue = TRUE;40 else {41 $EachTagStr[$i+1][0] = $EachTag;42 $EachTagStr[$i+1][1] = 1;43 $Continue = FALSE;44 }45 }46 } else { //initialize the array $EachTagStr[][]47 $EachTagStr[$i][0] = $EachTag;48 $EachTagStr[$i][1] = 1;49 $Continue = FALSE;50 }51 }52 }53 return $EachTagStr;54 }55 56 function ShowTag($Row,$ablink){57 $i = 0;58 while($Row[$i][0]){59 $EachTag = $Row[$i][0];60 $EachCount = $Row[$i][1];61 $Size = SetSize($EachCount);62 echo " ".$EachTag."(".$EachCount.")"." ";63 $i++;64 }65 }66 67 function GetTag(){68 $QuerySet = mysql_query("select * from article");69 while($Row = mysql_fetch_array($QuerySet)){70 $Tag = $Row['tag'];71 $TagString = $TagString.",".$Tag;72 }73 return $TagString;74 }75 76 function SetSize($Size){77 $Size += 10;78 if($Size > 30)79 $Size = 30;80 return $Size;81 }82 83 //Go 84 echo "
";85 echo "

标签云

";86 $String = GetTag();87 $Row = CountTag($String);88 ShowTag($Row,$ablink);89 echo "
";90 91 ?>

 

OK,DONE!

 

转载于:https://www.cnblogs.com/wuniaoheart/archive/2012/10/10/2717643.html

你可能感兴趣的文章
servlet的url-pattern匹配规则详细描述
查看>>
spring boot 整合 云之讯 demo
查看>>
《大型网站技术架构》1:概述
查看>>
(PatchGANs)Pecomputed Real-time Texture Synthesis With Markovian Generative Adversarial Networks
查看>>
Anjular的ng-repeat
查看>>
Gas Station,转化为求最大序列的解法,和更简单简单的Jump解法。——贪心、转化...
查看>>
MTK android 工程中如何修改照片详细信息中机型名
查看>>
Use delegation to write map/filter in Java
查看>>
html5用canvas对图片压缩
查看>>
opacity设定图片透明度
查看>>
Tizen - "泰泽"新移动操作系统
查看>>
go的net/http用法
查看>>
sql语句判断两个时间段是否有交集
查看>>
秒杀、抢购解决方案
查看>>
利用Mrjob实现Weighted Slope One算法
查看>>
jmeter旅程第二站:jmeter登录接口测试
查看>>
.Net Core 商城微服务项目系列(六):搭建自己的Nuget包服务器
查看>>
HTML
查看>>
java 多线程
查看>>
细说mysql索引
查看>>