重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
php把二维数组转成json
创新互联专注骨干网络服务器租用10年,服务更有保障!服务器租用,成都服务器托管 成都服务器租用,成都服务器托管,骨干网络带宽,享受低延迟,高速访问。灵活、实现低成本的共享或公网数据中心高速带宽的专属高性能服务器。
echo json_encode($array);//这样直接输出就行
js接受到后
如果是原生
$a=eval('('+response+')');
$a 就是你要的结果了
如果是jq
dataType项设为json
那得到的返回值直接就是json对象
其实就是发送一个网络请求,服务端输出的内容就是响应的内容,如jQuery
$.ajax(
{
url: '', // 请求URL
data: '', // 请求时携带的参数
type: '', // 请求方式, GET/POST
dataType: '',// 响应数据格式, text/json
success: r = {
// 请求成功时回调函数,参数 r 为服务端响应的内容
console.log(r); // 就是你说的后台数据
},
error: () = {
console.error('fail'); // 请求失败
}
}
)
// 服务端响应内容
$data = []; // 从数据库中获取的数据
echo json_encode($data); // 响应客户端, 数据格式为 JSON
返回数据代码如下:
如果在php里有echo的值的话,可以用AJAX来接收:
有多个输出的话,是不可能指定输出的
需要把想要输出的内容放到一个数组中,然后json_encode一下,在到js里循环,找到自己想要的值
比如:
//需要输出的内容
echo 'aaa'; echo 'bbb';echo ''ccc;
//合成数组
$data = array(‘name1’='aaa',‘name2’= 'bbb',‘name2’= 'ccc');
//json_encode
$data = json_encode($data);
//输出
echo $data;
js:
$.post('aa.php',‘’,function(mes){
var data = eval('(' + msg + ')');
var name1 = data['name1'];
var name2 = data['name2'];
var name3 = data['name3'];
})
//js
$.ajax({
async: false,
url:url,//后台地址
type:'GET',
dataType:"json",
success: function(data){
//data,后台返回数据
},
error: function(){
alert("输出错误");
}
});
//后台函数
public function get_content(){
$lists = M('bbs_note')-select();//获取数据库数据
if(!empty($lists)){
$this-ajaxReturn($lists);//返回数据
}
}