你无法传json对象到服务端交互的,要传的只是一个字符串(Json),是个字符串!
你发的代码里是json的解析,没有多大意义,你在php页面这样调试
var_dump($_REQUEST);//输出所有数据,如果存在的话,你会看到那个参数是啥
另外,json格式,主要方便javascript解析的,而不是php擅长的内容,多数情况下,是PHP返回json数据给js.
php的数组操作函数有主要的两个json_encode()与json_decode();
从你的代码中,我不确定你用何种方式通信,ajax?
我看你用到了jQuery,那里面有个ajax,方式类似这样的:
$.ajax({
type:?"post",??//method;can?be?get?with?post?or?request
url:?"/mySever.php",//php?url
error:?function(){alert('Error');},
data:?{
data1:?name,
},?
datatype:"json",//json?back
success:?function(msg)
{
//eval(msg);//parase?here
}
});
return?false;
返回json用的json_encode()方法没错,但是需要在头部声明格式.
代码解析
php返回需要用json_encode()方法来将需要转换的字符串转换成json编码格式(注意:仅仅更换文件内容,而返回的文件依然为文本格式且编码为gtk)
所以,这里需要在php头部声明
拓展内容
json
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据.简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率.
json通常被作为配置文件,常见还有.ini
目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它.
第一段:json_encode()
该函数主要用来将数组和对象,转换为json格式.先看一个数组转换的例子:
echo json_encode($arr);
结果为
第二段:索引数组和关联数组
PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array).
由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式.
比如,现在有一个索引数组
$arr = Array('one', 'two', 'three');
结果为:
["one","two","three"]
第三段:类(class)的转换
现在,对这个类的实例进行json转换:
$foo = new Foo;
$foo_json = json_encode($foo);
echo $foo_json;
输出结果是
{"public_ex":"this is public"}
可以看到,除了公开变量(public),其他东西(常量、私有变量、方法等等)都遗失了.
以上就是土嘎嘎小编为大家整理的而使用php检索json对象相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!