시나리오 : 페이지로드 (php)의 데이터베이스 셀을 변경 사항의 x 분마다 간격 루프에서 비교해야합니다.php 배열과 javascript 배열이 같은 데이터 비교
내 초기 데이터를로드는 다음과 같습니다
이var olddata = JSON.stringify(<?php echo json_encode($data1); ?>) + "~|~" +
JSON.stringify(<?php echo json_encode($data2); ?>) + "~|~" +
JSON.stringify(<?php echo json_encode($data3); ?>);
그래서 페이지로드에, 내가 가진 자바 스크립트 변수에 세포를 저장 "~ | ~"구분 기호 $의 데이터 1, $의 데이터 2, 및 $ data3은 데이터베이스에서 3 개의 다른 셀 (데이터 배열)입니다.
그리고 내 간격 루프 데이터 (아약스)에 대한 호출은 다음과 같습니다 : 나는data
에 대한
olddata
그들이 그것을에서
/
가에
\/
모양을 가지고 그 ... 데이터를 제외하고 거의 동일 보면 비교
// PHP on the AJAX page
echo json_encode($data1)."~|~".json_encode($data2). "~|~".json_encode($data3);
// AJAX code that gets called every x Intervals
$.get("ajaxpage.php", function(data) {
if (data == olddata) {
console.log("Good!");
}
});
data variable and not in the
olddata` 변수가 있습니다.
예 :
"10":["10"],"11":["11 5\/25"] // data = return from the AJAX call
"10":["10"],"11":["11 5/25"] // olddata = what was originally echoed on page load.
가 어떻게 그들이 완벽하게 일치되도록 두 가지를 비교할 수 있는가? 그래서 내가 데이터베이스와 json_encode에서 반향하는 것은 json 함수가 리턴 한 페이지와 jason으로 인코딩 된 똑같은 것으로부터 얻은 것과 일치합니다.
참고 : 나는 다음 JSON.stringify을 제거하는 경우가 반환됩니다 [개체 개체]
비교가 쓸데 없는데, 제 견해로, 데이터를 가져 와서 그것을 표시하십시오 ... 또한 olddata를 배열로 저장하는 것이 어떻습니까? –