php如何接收js传来的json对象

JavaScript020

php如何接收js传来的json对象,第1张

你无法传json对象到服务端交互的,要传的只是一个字符串(Json),是个字符串!

你发的代码里是json的解析,没有多大意义,你在php页面这样调试

var_dump($_REQUEST)//输出所有数据,如果存在的话,你会看到那个参数是啥

另外,json格式,主要方便javascript解析的,而不是php擅长的内容,多数情况下,是PHP返回json数据给js.

php的数组操作函数有主要的两个json_encode()与json_decode()

从你的代码中,我不确定你用何种方式通信,ajax?

我看你用到了jQuery,那里面有个ajax,方式类似这样的:

$.ajax({

type: "post",       //methodcan be get with post or request

url: "/mySever.php",//php url

error: function(){alert('Error')},

data: {

data1:   name,

data2:   age,

}, 

datatype:"json",//json back

timeout: 5000,

success: function(msg)

{

//eval(msg)//parase here

}

})

return false

}

1、直接当做js文件引入 ,相应变量就能获取到;

2、如果想读取本地json文件,需要环境,并且需要后台程序支持,不然出现安全性问题;

3、可以使用bloburl方式去获取文件,不需要后台支持,需要配环境 不然也有安全性问题;

用ajax请求这个json文件,换句话说,就是如下伪代码:

//请求/todo.json这个路径时,返回json文件

$.get('/todo.json').done(function(data){

do something with the data

})

你传送之前

alert(json.key)

看一下有没有变为正确json数据。

也可以这样

for(var

i

in

json){

alert(i+":"+json[i])

}