我试图从PHP页面获取JSON响应,然后将其与Swift一起使用。我使用的SwiftyJSON看起来很简单,但是我遇到了一个奇怪的问题。
我的代码是
let json = JSON(data: data!)
let name = json[0]["name"]
print(name)
这打印" null"。但是,如果我尝试打印json [0],我会得到对象结构:
{"name":"Da Mario","description":"pizza","city":"12038 Savigliano","zip":"","address":"Via Macra","phone":"","lat":"44.6451515","lng":"7.6519596","permalink":"n-a"}
对我来说似乎没问题。我真的不明白为什么打印json [0]有效,但json [0] [" name"]没有。
有什么想法吗?我真的无法弄明白。
编辑:这是完整的json数据:
[
"{\"name\":\"Da Mario\",\"description\":\"pizza\",\"city\":\"12038 Savigliano\",\"zip\":\"\",\"address\":\"Via Macra\",\"phone\":\"\",\"lat\":\"44.6451515\",\"lng\":\"7.6519596\",\"permalink\":\"n-a\"}",
"{\"name\":\"Burger Kebab\",\"description\":\"kebab\",\"city\":\"Savigliano\",\"zip\":\"12038\",\"address\":\"Via Trento\",\"phone\":\"\",\"lat\":\"44.6496363\",\"lng\":\"7.6525568\",\"permalink\":\"burgerkebab\"}"
]
答案 0 :(得分:2)
你有一些超过的报价。 你的json应该是这样的:
[
{\"name\":\"Da Mario\",\"description\":\"pizza\",\"city\":\"12038 Savigliano\",\"zip\":\"\",\"address\":\"Via Macra\",\"phone\":\"\",\"lat\":\"44.6451515\",\"lng\":\"7.6519596\",\"permalink\":\"n-a\"},
{\"name\":\"Burger Kebab\",\"description\":\"kebab\",\"city\":\"Savigliano\",\"zip\":\"12038\",\"address\":\"Via Trento\",\"phone\":\"\",\"lat\":\"44.6496363\",\"lng\":\"7.6525568\",\"permalink\":\"burgerkebab\"}
]
目前你只有一个字符串数组,你将拥有一个对象数组。