Php 如何通过URL将多个阵列导入iOS应用程序

Php 如何通过URL将多个阵列导入iOS应用程序,php,ios,json,Php,Ios,Json,我想知道是否有一种方法可以将多个数组从一个php文件返回到一个iOS应用程序 我已经设法用一个数组实现了这一点,但当我添加另一个数组时,我似乎得到了null:(在这里使用相同的方法保持简短,但实际上我从不同的表中得到了结果) PHP: 当我在浏览器中打开php文件时,我看到如下内容: [{"id":"1","name":"John"},{"id":"2","name":"Susan"}] [{"id":"1","name":"John"},{"id":"2","name":"Susan"}]

我想知道是否有一种方法可以将多个数组从一个php文件返回到一个iOS应用程序

我已经设法用一个数组实现了这一点,但当我添加另一个数组时,我似乎得到了null:(在这里使用相同的方法保持简短,但实际上我从不同的表中得到了结果)

PHP:

当我在浏览器中打开php文件时,我看到如下内容:

[{"id":"1","name":"John"},{"id":"2","name":"Susan"}]
[{"id":"1","name":"John"},{"id":"2","name":"Susan"}]
Xcode:

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSURL *url = [NSURL URLWithString:@"urlhere"];
    NSData *data = [NSData dataWithContentsOfURL:url];
    NSArray *resultsArray = (NSArray *)[NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];
    NSLog(@"%@",resultsArray);
}

但是,resultsArray似乎正在返回(null)。如果我只回显数组一次而不是两次,它似乎可以工作。有没有一种方法可以让两个数组都进入Xcode,然后在它们上使用NSJSONSerialization?谢谢

您应该
json\u将小数组编码成json字符串,然后将它们放入另一个数组中。在将所有小数组插入到大数组中之后,应该
json\u对其进行编码
it并将它们返回到xcode

在您的xcode中,尝试使用由他人完成的
github
google
中的解析器框架/插件,解析从php检索到的NSData。它现在应该成为NSArray/NSDictionary,这取决于您如何解析数据


这是如何解析我的数组的一些示例,在某些情况下可能需要解析它们两次。尝试记录结果并检查解析完成后得到的结果

p、 这会将NSData解析到NSDictionary中,如果您的情况需要,请尝试修改自己以返回NSArray

- (NSDictionary *)parseJsonDataToNSDictionary:(NSData *)POSTReply
{
NSDictionary * jsonArray = [[NSDictionary alloc] init];
// Check iOS version
NSString *version = [[UIDevice currentDevice] systemVersion];
BOOL isAtLeast5 = [version floatValue] >= 5.0;
if(isAtLeast5) {
    NSError *e = nil;
    jsonArray = [NSJSONSerialization JSONObjectWithData:POSTReply options:NSJSONReadingMutableContainers error:&e];
    if (!jsonArray) {
        NSLog(@"Error parsing JSON: %@", e); //return false;
    } else { /* sucess parsing */ }
} else {
    // support for device which not iOS 5
    NSString *json_string = [[NSString alloc] initWithData:POSTReply encoding:NSUTF8StringEncoding];
    SBJsonParser *parser = [[SBJsonParser alloc] init];
    jsonArray = [parser objectWithString:json_string];
}
return jsonArray;
}

您应该将2个JSON字符串组合成一个。Hi Shivan,如果我这样做了,那么以后如何将它们分开?谢谢
- (NSDictionary *)parseJsonDataToNSDictionary:(NSData *)POSTReply
{
NSDictionary * jsonArray = [[NSDictionary alloc] init];
// Check iOS version
NSString *version = [[UIDevice currentDevice] systemVersion];
BOOL isAtLeast5 = [version floatValue] >= 5.0;
if(isAtLeast5) {
    NSError *e = nil;
    jsonArray = [NSJSONSerialization JSONObjectWithData:POSTReply options:NSJSONReadingMutableContainers error:&e];
    if (!jsonArray) {
        NSLog(@"Error parsing JSON: %@", e); //return false;
    } else { /* sucess parsing */ }
} else {
    // support for device which not iOS 5
    NSString *json_string = [[NSString alloc] initWithData:POSTReply encoding:NSUTF8StringEncoding];
    SBJsonParser *parser = [[SBJsonParser alloc] init];
    jsonArray = [parser objectWithString:json_string];
}
return jsonArray;
}