php弹幕技术轮询,PHP实现长轮询消息实时推送功能代码

42d45af447080a14f346a3689aa6f730.png  入口文件index.html

反ajax推送

.send{color:#555;text-align: left;}

.require{color:blue;text-align: right;}

.content_box{text-align: center;margin: 20px;

border: 1px solid #ddd;padding: 20px;}

消息框

1

2

发送

连接

$(function(){

//发送消息

$('#btn_send').click(function(){

var send_text = $('#send_text').val();

if(send_text.length <= 0){

$('#error_tip').html('不能输入空值');

}else{

send(send_text);

}

});

//按回车键发送消息

$('#send_text').on('keyup',function(e){

if(e.keyCode == 13){

$('#btn_send').trigger('click');

}

});

//建立通讯链接

$('#btn_link').click(function(){

connect();

var _this = $(this);

_this.attr('disabled',true);

_this.html('已连接');

});

});

//建立通讯连接函数

function connect(){

$('#content_box_title').html($('#username').val()+'的消息窗口');

$.ajax({

data:{'user':$('#username').val()},

url:'ajaxPush.PHP',

type:'get',

timeout:0,

dataType:'json',

success:function(data){

$('#content_box').append('

'+data.msg+'
');

connect();

}

});

}

//发送消息函数

function send(massege){

var user =$('#username').val();

$.getJSON('write.php',{'msg':massege,'user':user},function(data){

if(data.sf){

$('#content_box').append('

'+massege+'
');

$('#send_text').val('');

}else{

$('#error_tip').html('输入保存错误!');

}

});

}

ajax处理输入 write.php

/**

* Created by TXM.

* Time: 2017/4/18 13:13

* function:

*/

$filename = dirname(__FILE__).'/data.txt';

$isread_file = dirname(__FILE__).'/isread.txt';

$user = dirname(__FILE__).'/user.txt';

//写入消息,消息未读,谁发送的消息

file_put_contents($filename,$_GET['msg']);

file_put_contents($isread_file,'0');

file_put_contents($user,$_GET['user']);

echo json_encode(array('sf'=>true));

长轮询推送 ajaxPush.php

/**

* Created by TXM.

* Time: 2017/4/18 13:12

* function:

*/

$filename = dirname(__FILE__).'/data.txt';

$isread_file = dirname(__FILE__).'/isread.txt';

$userfile = dirname(__FILE__).'/user.txt';

$get_user = $_GET['user'] == '1'?'2':'1';

$msg='';

while(1){

$msg = file_get_contents($filename);

$isread = file_get_contents($isread_file);

$user = file_get_contents($userfile);

//是对方发送的消息,设置消息已读,退出循环。

if($isread == '0' && $get_user == $user){

file_put_contents($isread_file,'1');

break;

}

sleep(1);

}

echo json_encode(array('msg'=>$msg));

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

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

相关文章

阿里云消息队列 RocketMQ 5.0 全新升级:消息、事件、流融合处理平台

简介&#xff1a; RocketMQ5.0 的发布标志着阿里云消息从消息领域正式迈向了“消息、事件、流”场景大融合的新局面。未来阿里云消息产品的演进也将继续围绕消息、事件、流核心场景而开展。 从“消息”到“消息、事件、流”的大融合 消息队列作为当代应用的通信基础设施&…

Gartner发布2022年政府行业重要业务趋势:数字化与创新、基础设施等

供稿 | Gartner 出品 | CSDN 云计算 时至2022年&#xff0c;政府领导人继续面临疫情带来不断变化的挑战&#xff0c;包括社会和经济领域的不确定因素。在2020年至2021年这段刚开始应对疫情的时期&#xff0c;为了满足公民服务和远程办公的需求&#xff0c;全球数字化程度呈指数…

随机段子api php,给博客添加一个名言段子语句随机播放的功能(集成Hitokoto)

之前浏览张戈的博客&#xff0c;发现他的文章页点赞下方有个很有意思的东西&#xff0c;一列显示一段句子&#xff0c;刷新一下会重新生成另外一个&#xff0c;主要包含段子、台词等有意思的话。余斗的博客不少内容都是参考张戈博客&#xff0c;虽然发现这个有趣的玩意很久了&a…

实践分享丨构建云上私有池(虚拟IDC)的5种方案详解

简介&#xff1a; 云上私有池系列终篇终于来了&#xff0c;本文将重点介绍构建云上的私有池&#xff08;虚拟IDC&#xff09;的多种方案和各自的优缺点&#xff0c;并给出相关的性价比优化建议。 本文作者&#xff1a;阿里云技术专家李雨前 摘要 围绕私有池&#xff08;虚拟…

2021云栖大会开源引力峰会发布的战略合作,Grafana服务到底是什么?

简介&#xff1a; 这几天关注云栖大会的小伙伴一定会发现阿里巴巴合伙人、阿里云高级研究员蒋江伟&#xff08;小邪&#xff09;在云栖大会开源引力峰会的演讲中&#xff0c;特别提到了一个叫 Grafana 服务的产品&#xff0c;并特意花费一页 PPT 介绍了这一次合作。到底是一个什…

因为一个循环,CPU搞了个新技术

作者 | 轩辕之风O 来源 | 编程技术宇宙 好久不见&#xff0c;我叫阿Q&#xff0c;是CPU一号车间的员工。我所在的CPU有8个车间&#xff0c;也就是8个核心&#xff0c;咱们每个核心都可以同时执行两个线程&#xff0c;就是8核16线程&#xff0c;那速度杠杠滴。 我所在的一号车间…

AI圈内卷?天池团聚请来专家集体“问诊”

简介&#xff1a; 近期杭州云栖大会上出现了一个“数据博物馆”&#xff0c;最吸引眼球的“展品”&#xff0c;竟是行业大规模开源数据集。不仅数量多达上百个&#xff0c;还覆盖零售、文娱、工业、医疗、自然科学等数十个行业。既有来自真实业务场景的商品数据&#xff0c;也不…

2021双11上云狂欢节 | 爆款产品底价全面开售

一年一度的双11狂欢节终于来啦&#xff01;怎样用最少的钱获得最多的福利&#xff1f;下面这份攻略收藏好&#xff0c;这波活动快冲&#xff01; 双11主会场&#xff1a;http://click.aliyun.com/m/1000304310/ 01 领取双11上云加油包 阿里云官网已实名认证的注册会员用户皆可…

针对场景化痛点,锐捷网络推出极简光 2.X,以太全光网再下一城

极简光 2.X 方案&#xff0c;旨在针对各行业的需求和痛点找到更合适的解法&#xff0c;为各行业的客户呈现更为适配的新产品。 出品 | CSDN云计算 光进铜退趋势之下&#xff0c;全光网在快速发展。 不过&#xff0c;更进一步在各个行业技术实施中&#xff0c;用户的痛点则多种多…

轻博客框架 php,DouPHP轻博客 v1.6 Release 20200925

DouPHP轻博客系统&#xff0c;基于PHPMYSQL架构的&#xff0c;可以使用它快速搭建一个博客系统。DouPHP轻博客系统功能特点操作简单后台简约明了&#xff0c;从使用者而不是开发者的角度出发设计后台功能布局&#xff0c;完全不需要使用手册就可以轻松进行日常内容编辑工作。功…

阿里云GanosBase升级,发布首个云孪生时空数据库

简介&#xff1a; GanosBase是李飞飞带领的达摩院数据库与存储实验室联合阿里云共同研发的新一代位置智能引擎&#xff1b;本次重磅升级为V4.0版本&#xff0c;推出首个云孪生时空数据库。 作者 | 谢炯 来源 | 阿里技术公众号 导读&#xff1a; GanosBase是李飞飞带领的达摩院…

演进实录|不同阶段的企业如何搭建监控体系?

简介&#xff1a; 企业业务发展越来越迅速&#xff0c;对 IT 的要求也愈发严苛且复杂。这不仅仅体现在运维团队架构与工作流程上&#xff0c;也体现在工具选型与平台搭建上。 今天我们好好聊一下工具选型与平台搭建思路与实践关键点。来看看阿里云会给出如何的最佳实践&#xf…

用过留痕,谁动了我的档案?

本篇文章暨 CSDN《中国 101 计划》系列数字化转型场景之一。 《中国 101 计划——探索企业数字化发展新生态》为 CSDN 联合《新程序员》、GitCode.net 开源代码仓共同策划推出的系列活动&#xff0c;寻访一百零一个数字化转型场景&#xff0c;聚合呈现并开通评选通道&#xff0…

php在线考试系统模板下载,PHPEMS在线模拟考试系统 v6.1

PHPEMS在线模拟考试系统主要用于构建在线考试系统&#xff0c;如驾照、英语等练习系统。一、系统功能&#xff1a;1、强化训练测验&#xff0c;对知识点进行单独联系2、随机组卷练习&#xff0c;系统自动抽取题目进行练习3、手工组卷联系&#xff0c;通过教师平台手工组卷形成考…

媒体声音|阿里云数据库:一站式全链路数据管理与服务,引领云原生2.0时代

简介&#xff1a; 引领云原生数据库技术持续创新 这几年&#xff0c;云原生已成为阿里云的另一个标签&#xff0c;不仅最早布局云原生技术&#xff0c;拥有大量客户实践&#xff0c;更打造出丰富的云原生产品家族。尤其是数据库产品线&#xff0c;已进入云原生2.0阶段&#xf…

数据增长浪潮下,PCIe 6.0的问与Rambus的答

作为历史上使用最广泛、可扩展性最强的互联技术&#xff0c;PCIe标准自21世纪初正式创立以来&#xff0c;它便一直作为数据中心和计算应用芯片间数据传输的行业标准而存在。而在近几年间&#xff0c;随着全球数据量的爆发式增长&#xff0c;PCIe标准的更迭自3.0到4.0的“七年之…

阿里巴巴首席技术官程立:我们相信并正在践行的“好科技”

简介&#xff1a; 10月21日&#xff0c;阿里巴巴集团首席技术官程立出席2021年云栖大会技术*可持续发展论坛&#xff0c;并发表《科技创新和未来生活》的主题演讲&#xff0c;谈及科技创新的价值&#xff0c;以及阿里巴巴相信并正在践行的“好科技”&#xff0c;本文是程立的分…

Serverless 架构模式及演进

简介&#xff1a; Serverless 架构从使用技术上有计算&#xff0c;数据存储&#xff0c;消息通信&#xff0c;我们可从运维性&#xff0c;安全性&#xff0c;可靠性&#xff0c;可扩展性&#xff0c;成本几个角度来衡量架构的优劣。本文会介绍一些常见的业务场景&#xff0c;探…

Kubernetes 的自动伸缩你用对了吗?

作者 | AddoZhang来源 | 云原生指北本文翻译自 learnk8s 的 Architecting Kubernetes clusters — choosing the best autoscaling strategy[1]&#xff0c;有增删部分内容。TL;DR: 在默认设置下&#xff0c;扩展 Kubernetes 集群中的 pod 和节点可能需要几分钟时间。了解如何调…

贾扬清谈云原生-让数据湖加速迈入3.0时代

简介&#xff1a; 摘要&#xff1a;2021云栖大会云原生企业级数据湖专场&#xff0c;阿里云智能高级研究员贾扬清为我们带来《云原生--让数据湖加速迈入3.0时代》的分享。 摘要&#xff1a;2021云栖大会云原生企业级数据湖专场&#xff0c;阿里云智能高级研究员贾扬清为我们带…