在XML页面上使用cURL或Pear(PHP)的HTTP_Request

时间:2009-10-03 00:44:14

标签: php http curl get pear

我不熟悉HTTP请求。

如何使用PHP,使用GET HTTP请求从此XML页面获取和解析信息?

http://heywatch.com/encoded_video/1850189.xml

基本上,这是一个已编码的视频,我试图从最近编码的视频中提取一些值。更具体地说,我试图拉动视频长度,以便我可以将它添加到我的数据库中。

我目前正在使用:

require_once "HTTP/Request.php";

$req =& new HTTP_Request("http://heywatch.com/encoded_video/1850189.xml");
$req->setBasicAuth("myusername", "mypassword");
$req->setMethod(HTTP_REQUEST_METHOD_GET);
$req->clearPostData();
if (!PEAR::isError($req->sendRequest())) {
 $response2 = $req->getResponseBody();
} else {
   $response2 = "";
}

echo $response1;
echo $response2;

但是,我不确定如何解析每条信息。可以找到HTTP GET请求信息here,但它们不提供任何示例。

对于如何做到这一点的正确方向的推动(使用PEAR或cURL,无论什么可能更有效)将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用以下代码在curl中执行请求

$url = "http://heywatch.com/encoded_video/1850189.xml";

$request = curl_init();
curl_setopt($request,CURLOPT_URL,$url);
curl_setopt($request, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($request);
curl_close($request);

该文本将以$ response结尾。我建议使用simple XML来解析XML文档以选择所需的信息。它非常易于使用。如果您根本不想使用curl,而且不必使用curl,则可以使用simplexml_load_file直接使用SimpleXML加载文档,并传入URL。