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!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/357693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【APICloud系列|36】 mobVerify免费短信验证码的实现

使用mobVerify之前,请到mob官网注册开发者账号,并申请api,大致流程如下: 1、网址:http://www.mob.com 2、注册登陆后鼠标放在右上角头像处即可看到"进入后台",点击进入 3、点击SecurityCodeSDK进入短信管理界面 4、点击顶部导航中的创建应用,填写信息即可获取…

PAT 1065 A+B and C (64bit) (20)

1065. AB and C (64bit) (20) 时间限制 100 ms内存限制 65536 kB代码长度限制 16000 B判题程序 Standard作者 HOU, QimingGiven three integers A, B and C in [-263, 263], you are supposed to tell whether AB > C. Input Specification: The first line of the input gi…

十大有用但又偏执的Java编程技术

经过一段时间的编码&#xff08;以我为例&#xff0c;大约20年左右&#xff0c;当您玩得开心时光飞逝&#xff09;&#xff0c;人们开始接受这些习惯。 因为&#xff0c;你知道... 任何可能出错的事情都会发生。 这就是为什么人们会采用“防御性编程”的原因&#xff0c;即偏执…

php 接入微信 验证,PHP实现微信公众平台企业号验证接口

这篇文章主要介绍了PHP编程之微信公众平台企业号验证接口,是通过回调操作实现的企业号验证功能接口,需要的朋友可以参考下本文实例讲述了PHP微信公众平台企业号验证接口。分享给大家供大家参考&#xff0c;具体如下&#xff1a;微信公众平台企业号验证接口、回调 PHP版&#xf…

【APICloud系列|37】 银联支付的实现

正式使用请与银联签约端调用方法&#xff1a;xlUnionPayapi.require(xlUnionPay); xlUnionPay .xlUnionPay({params},callback(ret,err))params: spId &#xff1a;银联保留参数&#xff0c;默认为null&#xff08;Android用&#xff09; sysProvider &#xff1a;银联保留参数…

NGUI 3.5教程(二)Label 标签 (Hello world)、多行文本

写在前面&#xff1a; 本文将创建NGUI的第一个样例。依照编程传统&#xff0c;第一个样例&#xff0c;就是做一个Hello world 显示出来。NGUI。我们用Label来实现 。欢迎大家纠错、拍砖&#xff01;原创非常辛苦&#xff0c;如有转载&#xff0c;请注明出处&#xff1a;htt…

【APICloud系列|38】 微信登录分享、QQ登录分享实现方法

对微信登录分享、QQ登录分享进行一个流程性的讲解。在微信分享经常是分享不成功或者图片不显示,主要问题是图片过大或者是没有本地化。 1、流程:使用auth进行授权--->getToken获取用户信息---->同步至服务端 注意:在安卓端可以提示用户没有安装微信端,但是ios端切…

PHP发送数据到指定方法,php通过header发送自定义数据方法_php技巧

下面小编就为大家分享一篇php通过header发送自定义数据方法&#xff0c;具有很好的参考价值&#xff0c;希望对大家有所帮助。一起跟随小编过来看看吧本文将介绍如何通过header发送自定义数据。发送请求时&#xff0c;除了可以使用$_GET/$_POST发送数据&#xff0c;也可以把数据…

JavaScript高级程序设计学习笔记第二十章--JSON

1.JSON&#xff1a;JavaScript Object Notation&#xff0c; JavaScript 对象表示法。 2.最重要的是要理解它是一种数据格式&#xff0c;不是一种编程语言。虽然具有相同的语法形式&#xff0c;但 JSON 并不从属于 JavaScript。而且&#xff0c;并不是只有 JavaScript 才使用 J…

jboss-5.1.0_JBoss AS 7.1.0.Final“ Thunder”发布-Java EE 6 Full Profile认证!

jboss-5.1.0在JBoss AS7上进行了大约一年的开发后&#xff0c;我们现已发布7.1.0.Final“ Thunder” &#xff01; 可从此处的通常位置下载该文件。 对于JBoss AS7团队来说&#xff0c;这是一个非常大的成就&#xff0c;我们为此版本感到非常自豪。 这个版本包含了7.1.0.CR1b的…

java编程一般类抽象类的定义,Java编程基础抽象类

本文主要是讲述Java编程基础-抽象类&#xff0c;更多Java技术知识&#xff0c;请登陆疯狂软件教育官网。  抽象类&#xff1a;  抽象&#xff1a;不具体&#xff0c;看不明白关键字abstract  抽象类的特点&#xff1a;  1.抽象方法只能定义在抽象类中&#xff0c;抽象类…

蓝牙手柄按键码

&#xfeff;&#xfeff;/*------------------------------------------------------------------------------ ZetaGC串口码与键码对应关系&#xff1a; 上 0x60 -> 0x26 \ 下 0x30 -> 0x28 | 此4键只能相邻按键组合按下 左 0x20 -> 0x25 | 右 …

【APICloud系列|39】实现人脸识别,人脸登录,人脸信息获取

场景:大部分的APP的注册、登录模式都是采用手机号和密码进行登录或者注册,当然这种模式并没有任何不妥,只是不能快速的实登录或者注册,减少手误或者慢的问题。 资源:现在我们可以通过人脸识别进行登录和注册,比如使用一登SDK集成,或者Facecore SDK集成,前后者都需要编程…

将PostgreSQL PL / Java安装为PostgreSQL扩展

在2011年&#xff0c;我在PostgreSQL PL / Java上写了一系列文章。 基本信息仍然可靠&#xff0c;但是现在有了一种从源代码安装PL / Java的简便方法。 这也消除了依赖第三方来创建软件包的需要。 这些注释将非常简短&#xff0c;因为我认为我的读者已经对git和maven熟悉了。 …

linux下php可以实现哪些功能,基于Linux的远程管理系统的设计与实现(PHP)

基于Linux的远程管理系统的设计与实现(PHP)来源&#xff1a;2BYSJ.cn 资料编号&#xff1a;2SJ260700 资料等级&#xff1a;★★★★★ %D7%CA%C1%CF%B1%E0%BA%C5%A3%BA2SJ260700以下是资料介绍,如需要完整的请充值下载. 本资料已审核过,确保内容和网页里介绍一致. 密 惠1.无需…

MySQL 5.6 my.cnf 参数说明(转)

1 # 以下选项会被MySQL客户端应用读取。2 # 注意只有MySQL附带的客户端应用程序保证可以读取这段内容。3 # 如果你想你自己的MySQL应用程序获取这些值。4 # 需要在MySQL客户端库初始化的时候指定这些选项。5 6 #7 [client]8 #password [your_password]9 port MYSQL_TCP_PORT…

java dto entity,entity与DTO完全一致时

完全一致指的是entity与DTO之间参数名、参数类型、参数个数全部相同的情况entity代码package com.hxd.simple.domain.entity;import java.io.Serializable;import java.time.LocalDateTime;/*** author hxd*/public class User implements Serializable {/*** 用户id*/private …

【APICloud系列|41】融云单聊及消息的处理的对接与实现

包含了单聊及消息的处理。主要分三个页面处理完成,入口首页(index)、消息列表页(message)、会话页面(chat) index.html var rong;apiready=function(){rong = api.require(rongCloud2);//判断用户登录成功后执行方法rongCloud();}function rongCloud(){//初始化init();/…

SQL2000中@@ERROR的使用提醒

SQL SERVER 2000中不支持TRY, CATCH语法&#xff0c;所以对于异常的捕捉处理只可以根据ERROR来判断&#xff1b; 经常的用法是在执行语句后直接判断ERROR <> 0 看是不是执行成功。 然而日前因为存储过程的多并发调用&#xff0c;对一个表插入数据&#xff0c;产生主键冲突…

tostring 16进制_ToString:身份哈希码的十六进制表示形式

tostring 16进制我以前在方便的Apache Commons ToStringBuilder上写过博客&#xff0c;最近有人问我&#xff0c;在生成的String输出中出现的看似神秘的文本是什么构成的。 询问该问题的同事正确地推测出他正在查看的是哈希码&#xff0c;但与他的实例的哈希码不匹配。 我解释说…