失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > PHP实现将页面中点击数量高的链接进行高亮显示办法

PHP实现将页面中点击数量高的链接进行高亮显示办法

时间:2020-04-21 20:53:34

相关推荐

PHP实现将页面中点击数量高的链接进行高亮显示办法

后端开发|php教程

php,高数量

后端开发-php教程

这里来介绍PHP将页面中点击数量高的链接进行高亮显示的方法,主要受到WordPress中某插件的启发,需要的朋友可以参考下

优酷视频源码,ubuntu鼠标无法使用,tomcat8启动报错,矿爬虫虫,php项目亮点,seo优化工作怎么样快速推广lzw

背景和需求

炫舞时代全p源码,vscode扫雷,ubuntu扫雷,tomcat蓝屏,sqlite 系统时间,韩国稳定服务器租用租赁,自定义图标插件,前端技术框架vue,c 网络爬虫源码,新乡php招聘,seo站长博客,手机捕鱼游戏网站源码,网页图片轮番怎么做,网赚网模板,js写注册页面,帝国网站管理系统插件,程序侠 大淘客lzw

就好比说页面导航的左侧是分类,分类下面有很多链接。我现在想统计所有分类下面点击次数最多的一个,并把其颜色做特殊处理!

delphi7 源码分析,ubuntu红色代表什么,如何登陆tomcat首页,爬虫异形测评,编译php 依赖,南沙seo关键词优化哪家好lzw

大致的数据结构如下:

{ "content": [ {"id": "1","name": "htmldrive","url": "/","cate": "前端开发","clickpoint": "100" }, {"id": "2","name": "17素材网","url": "/","cate": "前端开发","clickpoint": "151" }, {"id": "3","name": "阿里妈妈图标库","url": "/","cate": "前端开发","clickpoint": "2" }, {"id": "53","name": "Animate.css","url": "/uploads/example/Animatecss/","cate": "前端开发","clickpoint": "21" }, {"id": "55","name": "Dafont","url": "/","cate": "字体","clickpoint": "1" } ]}

如何对这些数据进行分类高亮显示呢?

方法和思路

最好的处理方式是在后端PHP中对齐进行处理。

思路:我们可以创建一个新的过渡数组,对原来的数组进行循环,创建一个分类的数组,然后把点击次数中的最大值和ID放到这个数组中。通过比较,获取分类中点击次数最多的ID和点击次数,然后把这个次数最多的ID放在一个新的数组中,循环原来的数据,通过inarray(),函数判断次数最多的ID是不是在这个数组当中,是的话,就给数据增加一个标示字段1,不是的话就是0。那么标示字段为1的就是分类中点击次数最多的。

调整之后输出的json是:

{ "content": [{ "id": "1", "name": "htmldrive", "url": "/", "cate": "前端开发", "clickpoint": "100", "max": 0},{ "id": "2", "name": "17素材网", "url": "/", "cate": "前端开发", "clickpoint": "151", "max": 1},{ "id": "3", "name": "阿里妈妈图标库", "url": "/", "cate": "前端开发", "clickpoint": "2", "max": 0},{ "id": "53", "name": "Animate.css", "url": "/uploads/example/Animatecss/", "cate": "前端开发", "clickpoint": "21", "max": 0},{ "id": "55", "name": "Dafont", "url": "/", "cate": "字体", "clickpoint": "1", "max": 0} ] }

php的代码如下:

$sql = "select id,name,url,cate,clickpoint from commonwebsite order by id asc "; $res= $db->getAll($sql); $temp_arr = array(); foreach ($res as $key => $value) { if(!isset($temp_arr[$value[cate]])){ $temp_arr[$value[cate]] = array(); $temp_arr[$value[cate]][max] = $value[clickpoint]; $temp_arr[$value[cate]][id] = $value[id]; }else{ if($value[clickpoint]>$temp_arr[$value[cate]][max]){ $temp_arr[$value[cate]][max] = $value[clickpoint]; $temp_arr[$value[cate]][id] = $value[id]; } } } $temp_id = array(); //创建一个存放ID的临时数组 foreach ($temp_arr as $val) {//循环之前创建的临时数组,存放分类和最多点击次数的 $temp_id[] = $val[id]; //将点击次数最多的ID赋值给了临时数组 } foreach ($res as $key => $vals) { //循环原来的数据 if(in_array($vals[id], $temp_id)){//如果次数最多的ID在原来的数组的ID中,那个加一个字段max并设置其值为1 $res[$key][max] =1; }else{ $res[$key][max] =0;//否则不是点击次数最多的,设置为0 } } $result[content] = $res; die(json_encode($result)); //json输出 exit();

总结:

如果觉得《PHP实现将页面中点击数量高的链接进行高亮显示办法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。