HTTP_Request с использованием cURL или Pear (PHP) на странице XML - PullRequest
1 голос
/ 03 октября 2009

Я не очень разбираюсь в HTTP-запросах.

Как я могу, используя PHP, получать и анализировать информацию с этой страницы XML, используя HTTP-запрос GET?

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 Request может быть найдена здесь , но они не предоставляют никаких примеров.

Буду признателен за правильное направление (как использовать PEAR или cURL, что может быть более эффективным).

Спасибо!

1 Ответ

1 голос
/ 03 октября 2009

Вы можете сделать запрос в 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 и вам не нужно, вы можете загрузить документ напрямую с помощью SimpleXML, используя simplexml_load_file и передав URL-адрес.

...