php实现标签云,php标签云的实现代码
数据库中,存放文章的表中有“Tag”字段,用来存放标签。标签之间用“,”分隔。比如“PHP,VB,随笔”。
下面的实现代码,将标签从数据库中搜出来,并格式化处理,使其以出现的次数为依据显示出不同大小的文字连接。
其中的细节,不做解释了!
观念陈、方法笨、效率低的标签云的实现代码如下:
复制代码 代码如下:
/**
* WNiaoBlog Tag Template ShowTag
*
* @package WNiaoBlog
*
* @subpackage Tag
*/
//Connect the database
//include('../include/config.php');
/**
* CountTag() - Statistics labels appear the number,and the data to be stored in the two array
*
* GetTag() - Access the Tag's Labels from the database
*/
function CountTag($String){
$TagString = $String;
//echo $TagString."
";
$Tags = explode(",",$TagString);
$n = 1;
$i = 0;
$Continue = TRUE;
//echo $Tags[1]."
";
//in case no-label's article
while($Tags[$n] OR $Tags[++$n] OR $Tags[++$n] ){
$EachTag = $Tags[$n++];
//echo $EachTag."
";
$Continue = TRUE;
for($i=0;$Continue;$i++){
if( $EachTagStr[$i][0] ) {
if( $EachTagStr[$i][0] == $EachTag ){
$EachTagStr[$i][1]++;
$Continue = FALSE;
}
else {
if( $EachTagStr[$i+1][0] ) $Continue = TRUE;
else {
$EachTagStr[$i+1][0] = $EachTag;
$EachTagStr[$i+1][1] = 1;
$Continue = FALSE;
}
}
} else { //initialize the array $EachTagStr[][]
$EachTagStr[$i][0] = $EachTag;
$EachTagStr[$i][1] = 1;
$Continue = FALSE;
}
}
}
return $EachTagStr;
}
function ShowTag($Row,$ablink){
$i = 0;
while($Row[$i][0]){
$EachTag = $Row[$i][0];
$EachCount = $Row[$i][1];
$Size = SetSize($EachCount);
echo " < a style='color:BLUE ; font-size:".$Size." ' onMouseOver=this.style.color='#900000' onMouseOut=this.style.color='BLUE' href='".$ablink."tag?tag=".$EachTag."' target='_self' > ".$EachTag."(".$EachCount.")"." ";
$i++;
}
}
function GetTag(){
$QuerySet = mysql_query("select * from article");
while($Row = mysql_fetch_array($QuerySet)){
$Tag = $Row['tag'];
$TagString = $TagString.",".$Tag;
}
return $TagString;
}
function SetSize($Size){
$Size += 10;
if($Size > 30)
$Size = 30;
return $Size;
}
//Go
echo "
";
echo "标签云";
$String = GetTag();
$Row = CountTag($String);
ShowTag($Row,$ablink);
echo "
";
?>
OK,DONE!
php实现标签云,php标签云的实现代码相关推荐
- python 标签云_标签云算法Python实现
标签云(Tag Cloud)常见于各种博客站点中,标签有利于网站内容分类,还可以用于相关性内容推荐.近日笔者有空把个人的开源博客Django_blog添加了一个新功能--标签云.最终效果请访问:htt ...
- 采集练习(五) php 获得chrome扩展 微度新标签页 下的云壁纸(主要是美女壁纸)
认识chrome 扩展还是去年年中,在朋友的帮助下用goagentFQ,那时才知道有chrome 扩展这玩意,当时觉得很新奇.于是自己陆续装了些chrome扩展. 前不久偶然间在google play ...
- python快速生成文字云_在Python中创建文字云或标签云
作者|ISHA5 编译|Flin 来源|analyticsvidhya 介绍 从开始从事数据可视化工作的那一天起,我就爱上它了.我总是喜欢从数据中获得有用的见解. 在此之前,我只了解基本图表,例如条形 ...
- 微信小程序蓝牙标签打印/标签云打印开放云平台(4)
微信小程序蓝牙标签打印/标签云打印开放云平台(下面简称"平台" www.herro.cn 技术服务TEL:15759216805),支持开发者通过API调用完成标签蓝牙打印或标签云 ...
- 采集练习(六) python获得chrome扩展 微度新标签页 下的云壁纸
采集分析见 采集练习(五) php 获得chrome扩展 微度新标签页 下的云壁纸(主要是美女壁纸) 以下是用python 实现同样的功能. python 版本 2.73 以下是代码: # -*- c ...
- 供应链可视化_智慧物流_ZETag云标签相比RFID标签有哪些优势?
当今,物流自动化.数字化.信息化.智能化已经成为物流乃至供应链领域的技术发展趋势.尤其是在提倡绿色低碳物流.经济循环发展的当下,物流载具的循环周转率.复购等问题都直接影响着企业运营成本和工作效率. Z ...
- 比较标签 php,比较标签 · ThinkPHP5.0完全开发手册 · 看云
比较标签用于简单的变量比较,复杂的判断条件可以用if标签替换,比较标签是一组标签的集合,基本上用法都一致,如下: ~~~ {比较标签 name="变量" value="值 ...
- 业界首发|阿里云重磅发布云原生架构白皮书
2020 年 7 月 21 日,由阿里云 20+ 位云原生技术专家共同编撰的<云原生架构白皮书>正式对外发布.作为业界首本全方位构建云原生架构规划与实践全景图的白皮书,本书在详细阐述云原生 ...
- 阿里云2020上云采购季,你适合买什么云产品?
线下IDC机房成本高? 自建数据库卡.慢,延迟高? 被黑客攻击了怎么办? 今年IT预算没多少? 不知道怎么过等保2.0? 你遇到了哪些问题?来阿里云2020上云采购季!主会场请戳:https://ww ...
- html 右上角删除图标,网页制作html+css制作div标签增加右上角删除图标的示例代码...
一.需求描述 在Div标签的右上角显示删除图标 二.实现方式 html.CSS 三.参考代码 .container{ width:60px; height:60px; border: 1px dott ...
最新文章
- Rocksdb 写流程,读流程,WAL文件,MANIFEST文件,ColumnFamily,Memtable,SST文件原理详解
- 让手机跑SOTA模型快8倍!Facebook AI开源最强全栈视频库:PyTorchVideo!
- 关于 x-requested-with 请求头 区分ajax请求还是普通请求
- Thinkpad W520 完美安装Ubuntu14.04LTS
- jenkins参数化构建过程
- “sql2005管道的另一端上无任何进程”及附带一系列问题完整解决方法
- 【老王来了】之相爱相杀三层交换与链路聚合
- .NET5在开发平台上远优于Java,如何发挥优势?
- JAVA笔记整理(五),JAVA中的继承
- ecstore 定时任务配置
- 柳氏管理学:感恩是双向的,强调单方面都是别有用心
- linux删除磁盘设备,linux添加,移除scsi设备
- win7添加java环境变量path_Win7怎么配置Java环境变量?
- Windows 上路由、端口转发配置
- 聊天软件黑盒测试,duckchat
- 纪念一次面试机试失败的题目:
- 联合证券|内外利好共振 今年A股可更乐观一点
- 【100个 Unity实用技能】| C# 中List 使用Exists方法判断是否存在符合条件的元素对象
- 阿里云解决方案怎么写?阿里云服务器等产品官方解决方案撰写思路
- font在html语言中是什么意思,font在html中的意思
热门文章
- 增加无线模块传输距离的方法
- 使用绝对布局的方法创建一个登录密码验证的简易窗口
- NOIP模拟测试25「字符串·乌鸦喝水·所陀门王的宝藏(陀螺王)」
- 20172302『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结
- call()和apply()方法(切换上下文)
- 在Eclipse中使用JUnit4进行单元测试(图文教程一)
- SQL预编译防注入小测试
- 关于创业公司的一些事情
- java.logging的重定向?
- 不等式约束的拉格朗日乘数法_Abaqus血管支架仿真|接触约束执行方式