![](/img/trans.png)
[英]parse json text only returned from php response in javascript/ajax
[英]Cannot parse JSON returned from PHP
在PHP中,我有一个JSON字符串数组,我需要通过AJAX调用返回到JavaScript。 如果数组中只有一个元素,则可以在响应上调用JSON.parse()。
前(PHP):
$data = [];
array_push($data, '{"Date" : "11/11/2015", "Number" : "123", "Status" : "Order Received"}');
echo json_encode($data);
前(JavaScript):
data = JSON.parse(data);
产生以下内容,我可以对其进行进一步处理和显示:
["{"Date" : "11/11/2015", "Number" : "123", "Status" : "Order Received"}"]
但是,如果我将两个Elements推入数组:
$data = [];
array_push($data, '{"Date" : "11/11/2015", "Number" : "123", "Status" : "Order Received"}');
array_push($data, '{"Date" : "12/12/2015", "Number" : "456", "Status" : "Processing"}');
echo json_encode($data);
我在响应中得到以下内容:
["{"Date" : "11/11/2015", "Number" : "123", "Status" : "Order Received"}",
"{"Date" : "12/12/2015", "Number" : "456", "Status" : "Processing"}"]
当我尝试使用JSON.parse()时,我用逗号将两个元素分隔开来引起了双引号。
}", "{
我曾尝试通过在发送回响应之前对数组/字符串进行编码/解码来解决PHP中的此问题,但是没有运气。 我还尝试通过调用JSON.stringify()来尝试重新格式化Response,以解决JS中的问题,但也没有运气。
想知道是否有人知道要使用的正确编码/解码/解析/字符串化模式。
感谢您对此的任何投入!
您必须正确填充array
,然后才能使用PHP
转换为JSON
$data = array();
$data = [];
array_push($data,
array( "Date" => "11/11/2015",
"Number" => "123",
"Status" => "Order Received"
));
echo json_encode($data);
这将为您提供以下输出:
[{"Date":"11\/11\/2015","Number":"123","Status":"Order Received"}]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.