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


Posted in PHP onAugust 21, 2014

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

可惜已经再不再是使用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交互性比较好,可以制作出具有动画效果的云标签。

PHP 相关文章推荐
Php做的端口嗅探器--可以指定网站和端口
Oct 09 PHP
vBulletin HACK----关于排版的两个HACK
Oct 09 PHP
仿AS3实现PHP 事件机制实现代码
Jan 27 PHP
PHP运行时强制显示出错信息的代码
Apr 20 PHP
php/js获取客户端mac地址的实现代码
Jul 08 PHP
php中PDO方式实现数据库的增删改查
May 17 PHP
PHP连接数据库实现注册页面的增删改查操作
Mar 27 PHP
PHP文件上传类实例详解
Apr 08 PHP
Android AsyncTack 异步任务实例详解
Nov 02 PHP
php实现单笔转账到支付宝功能
Oct 09 PHP
PHP基于session.upload_progress 实现文件上传进度显示功能详解
Aug 09 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
Mar 09 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 #PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
Aug 21 #PHP
个人写的PHP验证码生成类分享
Aug 21 #PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
Aug 21 #PHP
从零开始学YII2框架(六)高级应用程序模板
Aug 20 #PHP
ThinkPHP登录功能的实现方法
Aug 20 #PHP
从零开始学YII2框架(五)快速生成代码工具 Gii 的使用
Aug 20 #PHP
You might like
FleaPHP的安全设置方法
2008/09/15 PHP
PHP 类商品秒杀计时实现代码
2010/05/05 PHP
php代码运行时间查看类代码分享
2011/08/06 PHP
PHP安全的URL字符串base64编码和解码
2014/06/19 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
php实现的mongodb操作类
2015/05/28 PHP
JavaScript 字符串与数组转换函数[不用split与join]
2009/12/13 Javascript
FileUpload上传图片(图片不变形)
2010/08/05 Javascript
ExtJS DOM元素操作经验分享
2013/08/28 Javascript
利用jQuary实现文字浮动提示效果示例代码
2013/12/26 Javascript
理解javascript中DOM事件
2015/12/25 Javascript
基于jquery实现ajax无刷新评论
2020/08/19 Javascript
Javascript实现通过选择周数显示开始日和结束日的实现代码
2016/05/30 Javascript
javascript之Array 数组对象详解
2016/06/07 Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
2016/09/29 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
Vue2.0如何发布项目实战
2017/07/27 Javascript
jquery实现用户登陆界面(示例讲解)
2017/09/06 jQuery
react在安卓中输入框被手机键盘遮挡问题的解决方法
2018/09/03 Javascript
vue实现简单的星级评分组件源码
2018/11/16 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
2019/09/25 Javascript
Python中time模块和datetime模块的用法示例
2016/02/28 Python
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
Python实现随机选择元素功能
2017/09/14 Python
Python之list对应元素求和的方法
2018/06/28 Python
python3实现用turtle模块画一棵随机樱花树
2019/11/21 Python
浅谈pytorch torch.backends.cudnn设置作用
2020/02/20 Python
python plt可视化——打印特殊符号和制作图例代码
2020/04/17 Python
Python图像识别+KNN求解数独的实现
2020/11/13 Python
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
2019/06/03 HTML / CSS
应届生求职信范文
2014/06/30 职场文书
新课培训心得体会
2014/09/03 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
2019年共青团工作条例最新版
2019/11/12 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python