Предупреждения с использованием скручивания - PullRequest
0 голосов
/ 26 августа 2011
$dm_post = 'DATA=' . urlencode('<?xml version="1.0" encoding="ISO-8859-1"?><REPORTE><NROCTA>1098670</NROCTA><DETALLE><CONSULTA><CLAVE>123456</CLAVE><TIPO>1</TIPO><OPERACIONES><ID>123456789</ID></OPERACIONES></CONSULTA></DETALLE></REPORTE>');       

$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $dm_url);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $dm_post);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);

$info = simplexml_load_string($buffer, 'SimpleXMLElement', LIBXML_NOCDATA);

print_r($info);

Предупреждение: simplexml_load_string (): Сущность: строка 1: ошибка синтаксического анализатора: ожидается начальный тег, «<» не найдено в /var/www/domain.com/public_html/curl_test.php в строке 15 <br> Предупреждение: simplexml_load_string (): 1 в /var/www/domain.com/public_html/curl_test.php в строке 15
Предупреждение: simplexml_load_string (): ^ в /var/www/domain.com/public_html/curl_test.php в строке 15

есть идеи? я не знаю, почему я получаю ошибки

1 Ответ

1 голос
/ 26 августа 2011

Похоже, вам нужно установить для параметра cURL CURLOPT_RETURNTRANSFER значение true.

curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);

http://php.net/curl_setopt

По умолчанию curl_exec() выводит данные напрямую. Включив эту опцию, он возвращает данные в виде строки, которая, как представляется, соответствует ожидаемой.

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