2

我正在编写一个本机 iOS 7 应用程序,该应用程序需要从 JSON api(我控制的)检索数据。示例 JSON 输出如下所示:

{
"id" : "544",
"name" : "1900 Green Gables",
"address" : "83 West Main Street",
"city" : "Milford",
"phone" : "(607) 547-1381",
"video_thumb" : null,
"thumbnail" : null,
"s_description" : null
}

我正在使用 phpjson_encode()转换从我的数据库查询返回的关联数组。在 Objective-c 中,我使用NSJSONSerialization将 JSON 转换为NSMutableArray. 问题是null值被转换为"<null>". 我怀疑这是因为json_encode()不是双引号null值。为了一致性起见,我宁愿保留该值(检查值是否在我的 obj-c 代码中null似乎并不可靠)"<null>"

我知道我可以通过正则表达式的输出来解决问题json_encode(),但我宁愿避免额外的步骤,而且我担心对性能的负面影响。我可以对 PHP、Objective-C 甚至 SQL 查询进行任何更改来解决这个问题吗?

4

1 回答 1

4

<null>是 的字符串化描述[NSNull null],它是 Cocoa 集合中的占位符nil(不能nil直接包含)。

您应该将该值与[NSNull null]

if (dictFromJson[@"video_thumb"] != [NSNull null]) {
    // do stuff with video thumb here
}
于 2013-10-12T19:38:54.497 回答