我无法让 json_decode 处理我收到的特定字符串。
我已将其缩小到这一行:
“systemNotes[6]”:“2013 年 1 月 9 日下午 12:52 - 测试名称 - 将账单地址 2 从更改为发货名字:发货姓氏:电子邮件地址:发货地址:发货地址 2:发货城市:发货邮编/邮政:送货国家:送货州:电话:账单名:账单姓氏:账单地址:账单地址 2:账单 C"
从这个问题复制 json,问题是不可重现的 - 但原始 json 的代表性片段在这里:http ://codepad.org/ZzrC7rqQ - 并将其放入jsonlint.com给出:
Parse error on line 3:
... "systemNotes[6]": "January 09, 2013 12
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['
这个字符串有什么问题,以至于它是无效的 json?
编辑
我设法找到了确切的代码。
"systemNotes[6]":"January+09%2C+2013+12%3A52+PM+-+First+Name+-+Changed++Billing+Address+2+From++to+Shipping+First+Name%3A% 09+Shipping+Last+Name%3A%09+Email+Address%3A%09+Shipping+Address%3A+%09+Shipping+Address+2%3A+%09+Shipping+City%3A+%09+Shipping+Zip% 2FPostal%3A+%09+Shipping+Country%3A+%09+Shipping+State%3A+%09+Phone%3A+%09+Billing+First+Name%3A+%09+Billing+Last+Name%3A+%09+Billing+地址%3A+%09+帐单+地址+2%3A+%09+帐单+C"
这似乎没问题,所以问题可能出在我执行 parse_str 时,这是我正在使用的代码:
$response = apiConnection($data);
parse_str($response, $parse);
$each = json_decode($parse['data']);
foreach($each as $key => $order){
//do something
}