Вопрос

В php у меня есть:

$result = mysql_query($query);
// if successful query, return the records
if ($result)
{
    // if not empty result, return array of records
    if (mysql_num_rows($result))
    {
        $records = array();
        while ($row = mysql_fetch_assoc($result))
        {
            $records[] = $row;
        }
        return $records;
    }
     }

В Objective-C - После ПУБЛИКАЦИИ у меня есть следующий код...

NSURLResponse *newStr = [[NSURLResponse alloc] init];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:&newStr error:nil];

Возвращаемые данные равны литералу "Array", а не содержимому $records[]

Это было полезно?

Решение

Вы должны сериализовать данные в тип XML plist форматируйте, если можете, тогда он может быть изначально интерпретирован классами Cocoa, такими как NSArray и NSDictionary.NSPropertyListSerializer способен создавать изменяемые или неизменяемые массивы и словари из файла или из объекта NSData, содержащего сериализованные данные в формате plist.

NSDictionary также может читать файлы в этом формате:

"key" = "value";
"key2" = "value2";

Аналогично, NSArray может считывать файлы в этом формате:

(
     "value1",
     "value2",
     "value3",
     "30",
     "value5"
);

На самом деле, я думаю, что если строки не содержат пробелов, кавычки необязательны (но я предполагаю, что они принудительно вводят строковые типы).

Проверьте этот URL-АДРЕС для получения дополнительной информации о списках свойств oldschool ASCII.Они доступны только для чтения, но, опять же, их достаточно легко генерировать вручную или систематически.

Другие советы

Вам нужно отформатировать свой массив в некотором формате, который вы можете прочитать в Objective-C.Я рекомендую использовать JSON.

Если у вас есть PHP 5.2, вы можете использовать встроенные функции чтобы закодировать ваши данные.Например:

echo json_encode($records);

На стороне Objective-C вы можете использовать Сенсорный Json для декодирования /encode JSON.

На стороне PHP вам нужно сериализовать массив в формат, подобный JSON или XML, а не просто printобрабатываю это.На стороне iPhone затем десериализовал бы NSData объект, использующий соответствующую библиотеку

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top