Php JSON格式
使用找到的方法,我收集表单值并使用以下代码发布它们:Php JSON格式,php,javascript,json,Php,Javascript,Json,使用找到的方法,我收集表单值并使用以下代码发布它们: $.ajax({ type: "POST", url: "http://"+document.domain+"/SimplaAdmin/includes/rpc.php", data: { data:postdata, method: 'addSite'}, dataType: "json", ....... 公布的数据为: data:{ "textfield": ["",""], "drop
$.ajax({
type: "POST",
url: "http://"+document.domain+"/SimplaAdmin/includes/rpc.php",
data: { data:postdata, method: 'addSite'},
dataType: "json",
.......
公布的数据为:
data:{
"textfield": ["",""],
"dropdown": ["option1","option1"],
"siteTitle":"this is the site title",
"siteKey":"",
"siteurl":"",
"address1":"",
"address2":"",
"address3":"",
"landline":"",
"method":"addSite",
"small-input":"",
"medium-input":"",
"large-input":""
}
然后,我尝试使用以下方法获取siteTitle的值:
但它不起作用,我的想法中的缺陷在哪里?将$title=$obj->{'sitetTitle'}更改为
您的语法不正确-您只需要$title=$obj->sitetTitle 另外,我想您在本文的JSON字符串开头添加了数据:是吗?这也不应该存在 例如:
<?php
$string = '{"textfield":["",""],"dropdown":["option1","option1"],"siteTitle":"this is the site title","siteKey":"","siteurl":"","address1":"","address2":"","address3":"","landline":"","method":"addSite","small-input":"","medium-input":"","large-input":""}';
$obj = json_decode($string);
print_r( $obj->siteTitle );
?>
哪个输出
这是JSON在文章中转义的站点标题。删除了斜杠,效果很好。试试json.stringify-Google-ify;但它不是一个数组。如果希望返回数组,则需要将第二个参数传递为TRUE。默认情况下,json_decode返回对象时,这将不起作用。这将导致一个致命错误:无法将stdClass类型的对象用作数组错误。此返回null。数据:这正是我从chrome上获取的,用来显示发布的内容,但它不在那里;若要查看它是否正确解码字符串,请尝试从数据中删除数据:{data:postdata,方法:'addSite'},因此它看起来像这样的数据:{postdata,方法:'addSite'},是的,刚刚做了,它被转义了!阿拉json邮报。在解码之前做了一个删除$数据的程序,现在可以了。很好。很高兴你把它整理好了。
$title = $obj['siteTitle'];
<?php
$string = '{"textfield":["",""],"dropdown":["option1","option1"],"siteTitle":"this is the site title","siteKey":"","siteurl":"","address1":"","address2":"","address3":"","landline":"","method":"addSite","small-input":"","medium-input":"","large-input":""}';
$obj = json_decode($string);
print_r( $obj->siteTitle );
?>