Javascript 如何在php中检查两个类似的数据库调用是否返回相同的数据
我试图检查两个相同的从PHP到DB的背对背调用是否返回相同的数据 我在javascript中有一个setTimeoutFunction,它在服务器上调用一个函数,inturn调用数据库,大致结构如下Javascript 如何在php中检查两个类似的数据库调用是否返回相同的数据,javascript,php,ajax,Javascript,Php,Ajax,我试图检查两个相同的从PHP到DB的背对背调用是否返回相同的数据 我在javascript中有一个setTimeoutFunction,它在服务器上调用一个函数,inturn调用数据库,大致结构如下 function getOnlineUsers(){ ajaxCall({type:'get',method:'getOnlineUsersDB'},getOnlineUsersCallBack); setTimeOut(1000); } function getO
function getOnlineUsers(){
ajaxCall({type:'get',method:'getOnlineUsersDB'},getOnlineUsersCallBack);
setTimeOut(1000);
}
function getOnlineUsersCallBack(jsonObj){
//do something online only if 'jsonObj' is different from last jsonObj
}
我的PHP服务器端函数
$cacheData; // variable to cache data from previous calls to the DB
function getOnlineUserDB(){
$sql="select onlineusers from someTable ";
$data=getFromDbAndCastArray($sql);
if($data!=$cacheData){
$cacheData=$data;
return json_encode($data); //something new is returned since the last time
}
else {
return false;
}
}
基本上,如果在后续调用之间接收到的数据相同,我不想运行对Ajax调用的回调。
我试着用php将数据缓存在全局变量中,但失败了
我也可以尝试在前端检查,但不确定哪种方法是最好的
谢谢。您可以尝试以下方法