大家好,又见面了,我是你们的朋友全栈君。
正如Danp已经说过的,返回的JSON包含在函数调用中(由
jsoncallback=json
)你不能完全摆脱这个,但是,只是用
AreaSearch?jsoncallback=&lat=41.1131514&lng=-74.0437521
至少删除
json
在字符串的开头,您可以通过以下方式除去括号:
json = trim(trim(json), “();”);
给予:
{items:[{url:”http://fairfield.ebayclassifieds.com/”,name:”Fairfield”},{url:”http://newyork.ebayclassifieds.com/”,name:”New York City”}],error:null}
遗憾的是,JSON字符串无效。钥匙(
items
,
url
,…)必须用引号括起来。
“
. 您可以很容易地检查是否有语法错误
json_last_error()
(错误代码
4
,
JSON_ERROR_SYNTAX
)
更新:
json = preg_replace(‘/(\w+):/i’, ‘”\1″:’, json);
这将用引号括住键。
如果字符串
将
有效,然后可以通过以下方式生成数组:
a = json_decode(json, true);
这会给你:
Array
(
[items] => Array
(
[0] => Array
(
[url] => http://fairfield.ebayclassifieds.com/
[name] => Fairfield
)
[1] => Array
(
[url] => http://newyork.ebayclassifieds.com/
[name] => New York City
)
)
[error] =>
)
所以你可以通过
$a[‘items’][0][‘url’]
和
$a[‘items’][0][‘name’]
RESP
但我重复一遍,你得到的JSON是
无效
你不能用
json_decode()
以其原始形式。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/160618.html原文链接:https://javaforall.cn