浅谈js对json_encode(PHP)后的对象处理方法

为了减小服务端请求的数据,通常不会采用刷新页面的方式获取新数据,尤其是增量数据,采用ajax请求,服务器端返回一个json类型的数组的方式。

 

这里以PHP的json_encode()函数为例,简述其交互过程。

 

前端:

 

使用ajax请求PHP页面(这里用jquery.ajax的GET方法)

 

$.ajax({
  type: "GET",
  url: "/index.php?mod=xxx&p="+id+"&tm="+Math.random(),
  dataType:"json",
  success: function(msg){
   var result = new Array();
   result = eval(msg);
 var newhtml += '';
   for(x in result) 
   {
  newhtml += result[x]['name'];
   }
   alert(newhtml);
 }
});

服务端 :

 

        假设arrA是一个要返回的数组。可以通过下面这段代码将其返回。

 

<?php
echo json_encode($arrA);
?>

需要注意的是:

PHP中json_encode函数return的结果是string的形式,所以前端还需要通过eval()函数来以JS代码形式执行这段string

把结果保存到一个数组里,接下来只要遍历数组元素就可以了。