You probably don't want to send NSString objects from Cocoa to PHP. I'm guessing that you just want to send the payload strings within the objects from a Cocoa app up to a PHP script on a server and compress the string in transit in order to minimize network bandwidth. A laudable goal.
On the Cocoa side, use the bzip2 library and associated programming manual to implement compression. The good news here is that you should be able to do the compression entirely in memory using BZ2_bzCompressInit, BZ2_bzCompress, and BZ2_bzCompressEnd. Also, you mentioned Cocoa vs. Cocoa Touch, but if you're planning to submit this to the App Store, heed this post's advice and statically link the bzip2 library.
On the PHP side, follow this documentation to decompress the file. The downside here is that it's apparently necessary to save the bzip2 string to a temporary file before decompressing it.