Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP: send POST request then read XML response?

I'm trying to write a PHP script that sends a POST request to a remote server, then parses the XML response.

I can do the POST request, but am having difficulty (from other SO questions) working out how to parse the XML response.

My current code gives me: Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "1" in /Users/simon/usercreate.php on line 46 - the simplexml_load_file($response) line.

I'm working on a local server, not sure if that makes a difference. Code:

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
$response = curl_exec ($curl);
curl_close ($curl);
echo $response;
$rxml = simplexml_load_file($response);
echo $rxml->title;

What am I doing wrong?

like image 483
simon Avatar asked Dec 16 '22 13:12

simon


1 Answers

use simplexml_load_string instead of simplexml_load_file

like image 111
Tufan Barış Yıldırım Avatar answered Jan 11 '23 22:01

Tufan Barış Yıldırım