Разбор XML-ответа от CURL - запутано - PullRequest
0 голосов
/ 15 июня 2011

Используя CURL, я отправляю xml-файл на сервер и получаю ответ 200 и ответный XML-файл с указанного сервера.

$response = curl_exec($session);

Пока все хорошо. Если я сделаю print_r($response), я вижу, что нужный мне URL действительно находится внутри $response.

У меня вопрос: как мне разобраться? Я пробую варианты следующего, но, похоже, ничего не работает:

$xml = new SimpleXMLElement($response);

Указатель в правильном направлении был бы великолепен.

Спасибо!

Ответы [ 2 ]

1 голос
/ 15 июня 2011

Вам необходимо установить правильные параметры скручивания. Похоже, что информация заголовка включена в данные ответа, что, конечно, делает ответ недействительным XML. Вы можете увидеть параметры скручивания здесь:

http://www.php.net/manual/en/function.curl-setopt.php

Вы хотите отключить, включая заголовки, такие как:

curl_setopt($ch, CURLOPT_HEADER, false);
1 голос
/ 15 июня 2011

Вам необходимо использовать следующую структуру:

</p>

<pre><code>$xml = new SimpleXMLElement($response);
echo $xml->movie[0]->plot;

//Or
$xml = simplexml_load_file($file, 'SimpleXMLElement', LIBXML_NOCDATA);

Где фильм - это узел из вашей XML-структуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...