php如何以post形式发送xm并返回xmll数据

post的数据为xml字符串,通过 $xml = simplexml_load_string($post_data);转换成xml对象

        $header[] = "Content-type: text/xml";//定义content-type为xml
        $post_data = '<?xml version="1.0" encoding="UTF-8"?>';
        $post_data .= '<param>';
        $post_data .= '<siteId>' . 123 . '</siteId>';
        $post_data .= '<mtgTitle>' . 测试数据 . '</mtgTitle>';
        $post_data .= '<startTime>' . 2016-10-30 18:08:30 . '</startTime>';
        $post_data .= '<endTime>' . 2016-10-30 19:08:30 . '</endTime>';
        $post_data .= '</param>';
      //  dump($post_data);

        /*$xml = simplexml_load_string($post_data);
        dump($xml);
        echo "<meta charset=\"UTF-8\">";
        echo "<h3>发送</h3>";
        dump($xml);*/
        $url = "http://test.api.com";      
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        // post数据
        curl_setopt($ch, CURLOPT_POST, 1);
        // post的变量
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

        $response = curl_exec($ch);
        if (curl_errno($ch)) {
            print curl_error($ch);
        }
        curl_close($ch);
        
        $xml = simplexml_load_string($response);
        echo "<h3>接收</h3>";
        //dump($response);
        dump($xml);

 

posted @ 2016-10-13 08:48  Durriya  阅读(5194)  评论(0编辑  收藏  举报