我想知道我应该怎么做才能经常使用php接收和发布数据。 我真正想要的是接收并发布一个整数变量,该整数变量从服务器到客户端随机每秒更改,并在客户端打印我的变量的值并每秒更新一次。 此问题也用于多人游戏。就像一个变量,该变量在页面上保留字符位置,并发送和接收自身和其他玩家位置值。 我听说过解决套接字问题的一些知识,但是我找不到这个问题的很好来源。 你能帮我怎么做吗。
答案 0 :(得分:0)
最好的方法是使用套接字。无论如何,我当时也开发了类似的东西。
此代码每秒用服务器时间更新客户端时间:
----------- time.php ------------
echo("{'time' : '".date('D M d Y H:i:s')."'}");
-------- getTimeEverySec.js ----------
function startTime(){
httpRequest= new XMLHttpRequest();
httpRequest.open("GET", "time.php",true);
httpRequest.onreadystatechange=timeLoaded;
httpRequest.send();
}
function timeLoaded(){
readyState=httpRequest.readyState;
if(readyState!=4) return;
status=httpRequest.status;
if(status!=200) return;
serverTime=httpRequest.responseText;
eval("currentime="+serverTime); //the server side variable is stored in currentime
var today=new Date(currentime.time);
hours= today.getHours();
mins = today.getminutes();
secs = today.getSeconds();
document.getElementById("time").innerHTML=h+":"+m+":"+s;
var t=setTimeout(starTime,500); //recall the function every 0.5 sec
}
------- page.html --------
<H1>Current time</H1>
<p id="time"></p>
总结:该代码每秒钟从服务器获取一次。 “经常”收到的变量是当前服务器时间。您可以使用此示例接收任何变量。替换
echo("{'time' : '".date('D M d Y H:i:s')."'}");
使用您要经常接收的变量并更改一些javascript代码
我希望我很清楚。