我想从Cocoa向PHP发送大型NSStrings。
我可以使用bzlib库来动态压缩这些字符串(因此要在内存中压缩,而不是从磁盘压缩),然后能够在PHP中解压缩它们吗?
如果是,可以使用任何参考代码/功能吗?
感谢。
答案 0 :(得分:0)
您可能不希望将Cocoa中的NSString对象发送到PHP。我猜你只是想将对象中的有效负载字符串从Cocoa应用程序发送到服务器上的PHP脚本并压缩传输中的字符串以最小化网络带宽。一个值得称赞的目标。
在Cocoa方面,使用bzip2 library and associated programming manual来实现压缩。这里的好消息是你应该能够使用BZ2_bzCompressInit,BZ2_bzCompress和BZ2_bzCompressEnd完全在内存中进行压缩。此外,您提到了Cocoa vs. Cocoa Touch,但是如果您打算将其提交到App Store,heed this post's advice and statically link the bzip2 library。
在PHP方面,follow this documentation to decompress the file。这里的缺点是显然有必要在解压缩之前将bzip2字符串保存到临时文件中。