0

我能够发送GET请求并在下一行接收响应。

 $curl_resp = curl_exec($curl);

我使用以下来解析响应,但它不起作用,我已经手动设置了一些值,$curl_resp但仍然不确定如何分别访问每个标签的值xml

$xml = simplexml_load_string($curl_resp);

注意: 我收到了实际的 xml 但无法解析它,(我需要在变量中分别获取每个标签的值

代码:

<?php

   $service_url = ' The Url goes here';
   $curl = curl_init($service_url);
   $curl_post_data = array(
        "PASSWORD" => 'pass',
        "USERNAME" => 'username'
        );
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($curl, CURLOPT_POST, true);
   curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
   $curl_resp = curl_exec($curl);
   curl_close($curl);
4

3 回答 3

2

您的变量$curl_response不同于$curl_resp您要解析的

您可以像访问任何其他数组一样访问每个标签的值。

于 2012-12-27T06:46:12.597 回答
1

如果CURLOPT_RETURNTRANSFER未设置该选项,那么您$curl_resp将返回true/false

如果已设置,您可能会返回false或形成不良xml string。如果您发布更多代码或实际的 curl 响应文本,我们可能会提供更多信息。

编辑:

阅读代码后,您似乎将响应文本分配给 $curl_response 而不是 $curl_resp

于 2012-12-27T06:42:43.060 回答
-1
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, "your url");    
curl_setopt($ch, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
于 2012-12-27T06:42:40.377 回答