本文实例讲述了PHP实现的消息实时推送功能。分享给大家供大家参考,具体如下:
入口文件index.html
反ajax推送 消息框
ajax处理输入 write.php
<?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
<?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));
到此这篇关于PHP实现长轮询消息实时推送功能代码实例讲解的文章就介绍到这了,更多相关PHP实现长轮询消息实时推送内容请搜索IT博客社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT博客社区!
没有更多内容。


683