从PHP获取数据到iOS应用程序的最佳方式是什么?

从互联网上获取数据,通过PHP压缩和编写成iOS应用程序的最佳方式是什么? 目前,该应用程序读取一个格式如下所示的string:

category1#object2#object3#object4~category2#object2#object3[…] 

这是由#~的分裂。

有没有更好的方法来做到这一点,无论是在数据检索的方式(从它获得它的网站是开放的每个人),以及数据格式的方式?

使用JSON:

 {"category1":["object1", "object2", "object3", "object4"], "category2":["object1", "object2"]} 

所以说你有一个PHP对象或关联数组,你可以简单地调用它的json_encode并完成它。

在iOS端,你会想使用JSONKitparsing它。

关于这两条线的最好的事情就是它们有本地支持 。 例如, json_encode可以将任何PHP对象编码为可读的JSONstring,而JSONKit可以parsingJSON对象并将其存储在NSDictionaryNSArray

嘿,与JSONKit,它增强了能力(使用NSDictionaryNSArray上的类别)将NSDictionaryNSArray对象转换为 JSON,所以你甚至可以有一个双向的JSON通信pipe道。

(我们在Freeverse上用我们的游戏来做这个,这个方法是经过testing的。)

而不是又一个JSON的答案,我要给“select最好的JSON库”的一些链接:

  • JSONparsing器的Objective-C比较(JSON框架,YAJL,TouchJSON等)
  • 开发iPhone应用程序时使用的最佳JSON库?

现在为我自己的JSONparsing解决scheme的无耻插件, JSONKit :

  • 将10 MB JSON响应转换为NSDictionary的最有效方法是什么?
  • cocoaJSONparsing库,第2部分

acani也使用JSON,但是如果你有一个非常长的feed,XML会更好,因为Apple已经构build了一个asynchronousXMLparsing库,而JSON库是同步的。 因此,使用JSON库,您必须等待完整的JSON响应才能下载,然后在访问任何元素之前进行parsing。 使用XML库,在等待XML完全下载之前,它开始parsingXML,在XML中的每个元素完成parsing为Objective-C对象以供立即使用之后调用callback函数。 因此,您可以在整个Feed下载之前访问这些对象。 所以,对于小的提要,使用JSON(因为我喜欢JSON,而且更容易)。 对于大型提要,请使用XML。 希望他们很快就会推出一个asynchronous的JSON解决scheme。

查看顶级歌曲Xcode示例应用程序,了解如何asynchronous使用XML库的示例。