1

我不精通 HTTP 请求。

如何使用 PHP 获取和解析来自这个 XML 页面的信息,使用 GET HTTP 请求?

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 请求信息可以在这里找到,但它们没有提供任何示例。

在正确的方向上推动如何做到这一点(使用 PEAR 或 cURL,任何可能更有效的方法)将不胜感激。

谢谢!

4

1 回答 1

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 中。我建议使用简单的 XML 来解析 XML 文档以挑选出您需要的信息。它非常易于使用。如果您根本不想使用 curl,并且您不必这样做,您可以使用simplexml_load_file直接使用 SimpleXML 加载文档,并传入 URL。

于 2009-10-03T00:51:15.600 回答