1

シリアル化メソッドを使用してPHPで文字列をシリアル化しました

$serializedResult = serialize($value);

このシリアル化された文字列をObjective-Cで非シリアル化する方法

4

3 に答える 3

2

ObjectiveC用のシリアル化されたPHPオブジェクトパーサーはないと思います。

ただし、代わりにJSONを使用できます。PHP側ではjson_encode、を使用し、Objective C側では、http://blog.zachwaugh.com/post/309924609/how-to-use-json-in-cocoaobjective-cを参照してください。

または、Tommyが現在ネイティブな実装を指摘しているように:http://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html

于 2012-08-27T04:12:52.470 に答える
2

同じ問題が私にも起こります。解決策として、私はこの仕事をするためにパーサーを書きました。シリアル化と逆シリアル化の両方の機能があります。このリンクから入手できます。

これは、シリアル化のテスト例です。RTSerializer* serializer = [[RTSerializer alloc] init];

  NSMutableDictionary *pack=[NSMutableDictionary dictionary];
  [pack setValue:@"id" forKey:@"3"];
  [pack setValue:@"tariffid" forKey:@"152"];
  [pack setValue:@"rgid" forKey:@"1"];
  [pack setValue:@"name" forKey:@"Test"];


   NSString *_data=@"";
   _data=[serializer pack inString:_data];

脱リアル化の例、

 id object=[serializer deserialize:@"a:1:{i:0;a:4:{s:2:\"id\";s:1:\"3\";s:8:\"tariffid\";s:3:\"152\";s:4:\"rgid\";s:1:\"1\";s:4:\"name\";s:4:\"Test\";}}"];
于 2013-03-21T09:43:07.283 に答える
1

これが可能だとは思わないでください。PHPの手動によると、シリアル化メソッドはPHPスクリプト内でのみ使用されることになっています。

JSONなどのいくつかのオープンフォーマットを使用する必要があります。または、両方の言語で独自の「シリアル化」実装を作成できます。

于 2012-08-27T04:14:45.497 に答える