PHP实现的多彩标签效果代码分享

 更新时间:2014年08月21日 09:15:59   投稿:junjie  
这篇文章主要介绍了PHP实现的多彩标签效果代码分享,经常可以看到一些博客中的标签(TAGS)页面是彩色的效果展现,本文就给出了实现这个功能的PHP代码,需要的朋友可以参考下

目前,大家的博客左侧通常加上一个漂亮的多彩标记,也想给自己的小站加一下这个小功能。

可惜已经再不再是使用WordPress的时候那么方便了,使用WordPress的朋友们直接使用现成的插件,鼠标点点就可以加上这个炫彩的功能。小站程序是自个写的,要加这么一个功能还是得自己动手,就当学习吧!

首先,我分析了一下目前多彩标签的主要表现形式,主要有两点:颜色多样,大小不一。这个是多彩标签的特性,于是想到了PHP中的随机函数rand。直接给大小,颜色用rand随机取值就可以。

大小的随机值容易搞定,直接生成后连接单位即可

复制代码 代码如下:

<?php
// 随机大小实例
$m = rand(20,30);
echo '<span style="font-size:'.$m.'px">随机大小</span>';
?>

生成颜色值稍微麻烦一些,因为颜色值是十六进制字符表现形式,而随机函数rand不能直接生成 0 到 F 这么用,最后直接用数组保存十六进制字符,然后随机生成鼠标下标这样也可以实现随机颜色
复制代码 代码如下:

<?php
// 随机颜色函数
// 直接返回随机生成的色值
function getColor(){
        // 先用数组把十六进制字符保存在一个数组中
    $arr = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
 
        // 因为颜色色值长度是6位,所以循环6次
    for($i=0;$i<6;$i++){
                // 随机生成0到15数字,然后当作数组下标取值即可
        $color .= $arr[rand(0,15)];
    }
 
        // 返回的时候,把#号加上
    return ‘#'.$color;
}
?>

随机大小,随机颜色搞定后剩下的都不是问题的问题了。直接取出所有标签然后去重,然后遍历数组生成HTML文本即可。

最后提点建议,毕竟PHP是服务器端,每次都rand会让服务器鸭梨不小(那些特牛的机器可以忽略不计,毕竟目前用VPS的还是众多)。我们可以在博客的标签在发生变动的时候再生成即可,比如删除,修改,增加文章产生新的标签时候我们再去生成多彩标签的HTML文本。最后这些生成的多彩签HTML没必要存进数据库,直接保存在在一个文件里,然后include即可。

目前,我的小站就是这么实现的。有空,我再介绍JavaScript实现多彩标签,原理也差不多一样,只不过是JavaScript是客户端行为,不用担心服务器端的鸭梨,而且JavaScript交互性比较好,可以制作出具有动画效果的云标签。

相关文章

  • thinkphp实现发送邮件密码找回功能实例

    thinkphp实现发送邮件密码找回功能实例

    这篇文章主要介绍了thinkphp实现发送邮件密码找回功能的方法,以实例形式详细讲述了配置文件与功能代码的实现方法,是非常实用的技巧,需要的朋友可以参考下
    2014-12-12
  • php中实现用数组妩媚地生成要执行的sql语句

    php中实现用数组妩媚地生成要执行的sql语句

    这篇文章主要介绍了php中实现用数组妩媚地生成要执行的sql语句,本文直接给出代码示例,需要的朋友可以参考下
    2015-07-07
  • 浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑

    浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑

    今天小编就为大家分享一篇浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • laravel使用redis队列实例讲解

    laravel使用redis队列实例讲解

    这篇文章主要介绍了laravel使用redis队列实例讲解,使用laravel框架之后配置redis还是很简单的,有感兴趣的同学可以学习下
    2021-03-03
  • thinkPHP自动验证机制详解

    thinkPHP自动验证机制详解

    这篇文章主要介绍了thinkPHP自动验证机制,结合实例形式分析了thinkPHP自动验证机制的格式、原理与具体操作技巧,需要的朋友可以参考下
    2016-12-12
  • 避免Smarty与CSS语法冲突的方法

    避免Smarty与CSS语法冲突的方法

    这篇文章主要介绍了避免Smarty与CSS语法冲突的方法,实例分析了Smarty与CSS中大括号{}冲突的处理技巧,需要的朋友可以参考下
    2015-03-03
  • PHP PDO预处理语句及事务的使用

    PHP PDO预处理语句及事务的使用

    今天这篇文章,我们来简单的学习一下 PDO 中的预处理语句以及事务的使用,它们都是在 PDO 对象下的操作,而且并不复杂,简单的应用都能很容易地实现。只不过大部分情况下,大家都在使用框架,手写的机会非常少。
    2021-06-06
  • 从零开始学YII2框架(三)扩展插件yii2-gird

    从零开始学YII2框架(三)扩展插件yii2-gird

    yii2-gird 插件是Yii2.0的一个扩展。它在官方的girdview基础上扩展了一些实用的功能。非常好用,推荐使用哦。
    2014-08-08
  • 使用Rancher在K8S上部署高性能PHP应用程序的教程

    使用Rancher在K8S上部署高性能PHP应用程序的教程

    这篇文章主要介绍了使用Rancher在K8S上部署高性能PHP应用程序,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • phpcmsv9.0任意文件上传漏洞解析

    phpcmsv9.0任意文件上传漏洞解析

    这篇文章主要介绍了phpcmsv9.0任意文件上传漏洞解析,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10

最新评论