【发布时间】:2015-11-26 14:44:10
【问题描述】:
我有一个问题,不知道是什么问题。我的 html 中有一个 javascript 变量。即:
var people = '{"names": ["Matthew", "Lucas", "Todd", "Roxie", "Kyle", "Ken", "Gideon"], "surnames": ["Patel", "Lee", "Ingram", "Richter", "Katayanagi", "Katayanagi", "Graves"]}';
我在脚本中的一个函数上解析变量并使用它。一切正常。
var mydata = JSON.parse(people);
但是我需要将数据发送到一个 php 文件,我通过将数据写入隐藏输入来发送它。
var strObject = JSON.stringify(mydata);
var replaced = strObject.replace(/\//g, '');
oFormObject = document.forms['theForm'];
oFormObject.elements["jsonData"].value = replaced;
之后我尝试在我的 decode.php 中使用:
$obj = $_POST['jsonData'];
json_decode($obj);
$s = stripslashes($obj);
var_dump($s);
但是当我做一个 var_dump($s) 我得到这个输出:
string(147) "{"names":["Matthew","Lucas","Todd","Roxie","Kyle","Ken","Gideon"],"surnames":["Patel","Lee","Ingram","Richter","Katayanagi","Katayanagi","Graves"]}"
因此,我无法输出 $s 中的内容。任何建议。如果您需要更多信息,请告诉我。顺便说一句,这是一项家庭作业,我被最后一部分卡住了。
【问题讨论】:
-
json_decode返回对象/数组。您需要将返回分配给变量,例如$jsOb = json_decode($obj) -
你需要获取从
json_decode($obj)返回的json! -
你想从中得到名字姓氏对吗??
-
这可能会对您有所帮助,stackoverflow.com/questions/15986235/… 您应该使用 html_entity_decode() 来检查答案
标签: javascript php json