php-push技术实现刷新功能

QQQQQueenN

QQQQQueenN

2016-01-29 13:36

php-push技术实现刷新功能,php-push技术实现刷新功能

PHP-Push技术实现刷新功能
Server push 前一段时间炒得很热的推技术,不过网上大部分都是cgi的资料,偶尔看到一个法国的网站上有这么个介绍,可惜法语看不懂,只能从他的程序中看懂点东西,现整理个例子出来大家学习一下。可以用于聊天室的数据传输、网站上的新闻更新、等等各类更新频繁的页面。

以前做刷新主要通过页面上加标签。

 
< META HTTP-EQUIV=REFRESH CONTENT="time;URL=url"


或者使用javascript的timeout+reload,不过这种刷新的方法取决于时间的设定,无法连续的数据传输且时间不好确定。采用了Server push的服务器在客户机做出一个请求后,和客户机建立一个永久的连接,然后服务器会根据客户机的请求不断地把数据包推向服务器。那些你觉察不到的延迟会让你觉得服务器的响应和你的请求已经达到了同步的程度。

先来看一下例子再解释。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/php/)

 img.php

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/php/)

<?php
set_time_limit(0);
$file = "./1.jpg";
$sep = "gIrLsKiCkAsSiTsAySsOoNaTsHiRt";
if(ereg(".*MSIE.*",$HTTP_SERVER_VARS["HTTP_USER_AGENT"])){
//如果是ie浏览器,直接输出就退出,IE的不支持哦,我没试出来过
header("Cache-Control: no-cache");
header("Pragma: no-cache");
header("Content-type: image/jpeg");
header("Content-size: " . filesize($file));
readfile($file);
}else{
header("Content-Type: multipart/x-mixed-replace; boundary=$sep");
//这里是关键哦,看看MIME类型说明
//你会明白
print "--$sep";
do{
print "Content-Type: image/jpeg";
readfile($file);
print "--$sep";
flush();
$mt = filemtime($file);
do{
sleep (1);
clearstatcache();
}while($mt == filemtime($file));
}while(1);
}
?


这就是一个永久执行的页面(网络不断的情况下),不断输出图片的内容,下面是调用的页面。<img src="http://img.jcwcn.com/attachment/portal"

展开更多 50%)
分享

猜你喜欢

php-push技术实现刷新功能

PHP
php-push技术实现刷新功能

关于PHP-Push技术

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
关于PHP-Push技术

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

asp防止刷新功能实现代码

Web开发
asp防止刷新功能实现代码

如何用AJAX实现网页无刷新功能

Web开发
如何用AJAX实现网页无刷新功能

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

详解iOS开发中UItableview控件的数据刷新功能的实现

编程语言 网络编程
详解iOS开发中UItableview控件的数据刷新功能的实现

利用php和js实现页面数据刷新

PHP
利用php和js实现页面数据刷新

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

容器中控件的拖动

容器中控件的拖动

快闪手册——Alt键的妙用(4)

快闪手册——Alt键的妙用(4)
下拉加载更多内容 ↓