在字符串查询中将数组作为参数传递

时间:2013-04-13 19:48:36

标签: php iphone objective-c

我需要传递一个搜索查询,其中我有一个字符串ID数组,我想检查这些ID是否存在于服务器上。我对服务器的性能最感兴趣,所以我希望它使用最少的资源

这是我正在使用的代码

myContactIds = NSMutableArray which contains lets say 1000 strings of ids

NSString *queryString = myUrl?=array=NEED_TO_SEND_ARRAY_HERE ;


 [Utilities responseFromURL:[NSURL URLWithString:queryString] completionBlock:^(NSString *response, NSError *errorString)
     {

         [self.myTable reloadData];
         [self.indicator stopAnimating];
     }];

首先,我如何使用我的url传递一个数组,以便可以在我的PHP服务器端代码上读取它 其次,如果数据库包含id并作为响应发回,我如何使用该数组在服务器端进行查询,数据库中存在的ID

P.S如果我可以在不使用任何外部库的情况下得到答案,那就更好了,因为我想学习。

1 个答案:

答案 0 :(得分:0)

你想传递网址中的字符串吗?例如:
www.myUrl.com?array=string1%7Cstring2%7Cstring3

如果是这样,你可以使用componentsJoinedByString:

NSArray *myArray = @[@"string1", @"string2", @"string3"];
NSString *stringFromArray = [myArray componentsJoinedByString:@"%7C"];

然后你可以在你的网址中使用该字符串。然后你当然要从网络服务器上的网址中解析子字符串。

但是,将此数组嵌入Web请求的HTTP主体可能要容易得多。您可以从字符串数组创建JSON blob。然后将JSON填充到请求的HTTP正文中。

您使用的解决方案显然将特定于您的确切需求。