php实时数据保存 php实时输出

PHP如何接收动态数据保存并实时显示到网页上?

头部加上超时控制,但对于很多服务器无效,因为服务器输出超时很多在服务器控制,所以建议用cmd脚本方式运行此程序:

目前成都创新互联已为上千多家的企业提供了网站建设、域名、网站空间、网站托管维护、企业网站设计、开原网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

?php

set_time_limit(0); //禁用脚本超时

// Create the socket and connect

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

$connection = socket_connect($socket,'116。236。128。220', 14580);

// Write some test data to our socket

if(!socket_write($socket, "user NoCall pass -1 vers test 1.0 filter b/B* \r\n"))

{

echo("pWrite failed/p");

}

if(!file_exists('socket_log.html')){

file_put_contents('socket_log.html', 'script

var xx = setInterval(function(){ //每5秒刷新一次页面

window.location.reload();

}, 5000);

/script');

}

// Read any response from the socket

while($buffer = socket_read($socket, 64, PHP_NORMAL_READ))

{

echo json_encode($buffer); //转换为json数据输出

//记入文件

file_put_contents('socket_log.html', json_encode($buffer), FILE_APPEND);

}

echo("pDone Reading from Socket/p");

使用方法:用命令行方式运行此脚本

php script.php

脚本会一直运行到接收数据结束,并持续将收到的数据写入socket_log.html文件。

在浏览器打开socket_log.html页面,此页面会自动每5秒刷新一次,来显示最新的数据。

确保程序有权限创建及写入socket_log.html文件

php session 数据保存在哪里?

当然是在服务器端,但不是保存在内存中,而是保存在文件或数据库中。

默认情况下,php.ini

中设置的

SESSION

保存方式是

files(session.save_handler

=

files),即使用读写文件的方式保存

SESSION

数据,而

SESSION

文件保存的目录由

session.save_path

指定,文件名以

sess_

为前缀,后跟

SESSION

ID,如:sess_c72665af28a8b14c0fe11afe3b59b51b。文件中的数据即是序列化之后的

SESSION

数据了。

如果访问量大,可能产生的

SESSION

文件会比较多,这时可以设置分级目录进行

SESSION

文件的保存,效率会提高很多,设置方法

为:session.save_path="N;/save_path",N

为分级的级数,save_path

为开始目录。

当写入

SESSION

数据的时候,PHP

会获取到客户端的

SESSION_ID,然后根据这个

SESSION

ID

到指定的

SESSION

文件保存目录中找到相应的

SESSION

文件,不存在则创建之,最后将数据序列化之后写入文件。读取

SESSION

数据是也是类似的操作流程,对读出来的数据需要进行解序列化,生成相应的

SESSION

变量。

php保存数据到数据库

需要转义一下。有几个办法:

1,最简单,把一些危险字符过滤掉,比如英文的单引号,双引号等;

2,使用addslashes在php中进行转义,自己处理;

3,可以使用一些现成的处理方法,比如uchome自带的getstr。这样的好处就是对各种可能出现的情况处理比较好。


名称栏目:php实时数据保存 php实时输出
本文URL:http://scyanting.com/article/hgijso.html