Загрузка NSArray на iPhone из динамического URL базы данных в PHP или ASP - PullRequest
0 голосов
/ 07 мая 2010

У меня есть онлайн-база данных, которую я хотел бы загрузить в NSArray в своем приложении. Я могу использовать arrayWithContentsOfURL со статическим файлом, но мне действительно нужно перейти к URL, который генерирует файл plist из базы данных и загружает его в массив. Я могу использовать ASP или PHP. Я попытался установить тип ответа «text / xml», но это не помогает.

Есть мысли?

Ответы [ 2 ]

0 голосов
/ 08 мая 2010

Лучше всего использовать JSON.хорошо отформатированный, очень короткий код, легкий, быстрый и простой в использовании.

например, сгенерируйте ваш массив с php, что вы хотите получить в вашем коде obj-c.

$arr = array("foo" => "bar", "foobar" => "barfoo");

затем закодируйте ваш массив в объект json и выведите echo

echo '{"myarray":'.json_encode($arr).'}';

, скопируйте json framework в ваше приложение и просто используйте:

NSString *resultString = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://foo.bar/yourfile.php"]];
NSDictionary *resultJson =  [resultString JSONValue];
NSArray *resultSet = [resultJson objectForKey:@"comments"];

, теперь вы получили именнотот же массив в вашем коде iphone, что и в вашем php-файле.

// edit:

, вы можете использовать NSURLRequest для лучшей производительности и других интересных вещей.проверить это.

0 голосов
/ 08 мая 2010

plist-формат Apple - это не просто XML-схема. Вы должны создать действительный файл plist на вашем сервере.

Используйте, например, CFPropertyList .

...