PHP XML响应未显示在curl请求中

时间:2015-07-09 21:13:14

标签: php xml curl

我在两个文件之间测试XML POST:

  1. index.php,它向页面写出一个简单的xml。

  2. send.php,它将一个curl POST发送到index.php并期望xml响应

  3. 当我打开send.php' - index.php中的xml没有写入页面。我怀疑我没有正确地写出xml,但可以真正使用一些指导。我的代码如下:

    // send.php
    $url_request = 'index.php';
    
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url_request);
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
        $response = curl_exec($curl);
        curl_close($curl);
    
        $xml = simplexml_load_string($response);
        print_r($xml);
    
    // index.php
    header("Content-type: text/xml");
    
    function sendResponse(){
        $response = '<?xml version="1.0" encoding="utf-8"?><response>success</response>';
        echo $response;
    }
    
    sendResponse();
    

1 个答案:

答案 0 :(得分:1)

您需要使用index.php文件的完整路径:

$url_request = 'http://localhost/path/to/index/index.php';

此外,在echo curl_error($curl);之后使用curl_exec跟踪错误始终是一种好习惯。