To change the request protocol use the option "protocol". The allowed values are:
* HTTP_VERSION_NONE (integer)
* HTTP_VERSION_1_0 (integer)
* HTTP_VERSION_1_1 (integer)
(PECL pecl_http >= 0.1.0)
http_get — Выполняет GET запрос
$url
[, array $options
[, array &$info
]] )Выполняет HTTP GET запрос к переданному url.
Смотрите полный список опции запроса.
Возвращает строку с HTTP-ответом(ами) при успешном завершении работы, или FALSE
при ошибке.
Пример #1 Пример использования http_get()
<?php
$response = http_get("http://www.example.com/", array("timeout"=>1), $info);
print_r($info);
?>
Результат выполнения данного примера:
array ( 'effective_url' => 'http://www.example.com/', 'response_code' => 302, 'connect_code' => 0, 'filetime' => -1, 'total_time' => 0.212348, 'namelookup_time' => 0.038296, 'connect_time' => 0.104144, 'pretransfer_time' => 0.104307, 'starttransfer_time' => 0.212077, 'redirect_time' => 0, 'redirect_count' => 0, 'size_upload' => 0, 'size_download' => 218, 'speed_download' => 1026, 'speed_upload' => 0, 'header_size' => 307, 'request_size' => 103, 'ssl_verifyresult' => 0, 'ssl_engines' => array ( 0 => 'dynamic', 1 => 'cswift', 2 => 'chil', 3 => 'atalla', 4 => 'nuron', 5 => 'ubsec', 6 => 'aep', 7 => 'sureware', 8 => '4758cca', ), 'content_length_download' => 218, 'content_length_upload' => 0, 'content_type' => 'text/html', 'httpauth_avail' => 0, 'proxyauth_avail' => 0, 'num_connects' => 1, 'os_errno' => 0, 'error' => '', )
To change the request protocol use the option "protocol". The allowed values are:
* HTTP_VERSION_NONE (integer)
* HTTP_VERSION_1_0 (integer)
* HTTP_VERSION_1_1 (integer)
The hard work of parsing out the response is done in http_parse_message().
To replace the relatively weak file_get_contents(), using
$body = http_parse_message(http_get($url))->body;
The advantages to using http_get include getting back headers and controlling timeouts.
[Moderators: This is not a bug report :P]
If you're using $data = http_get('http://...'); to get your message and you're getting weird numbers in it, PLEASE see tac at smokescreen dot org's message below!
Note that the body element http_parse_message returns is NOT the page's contents of the <body> tag! It's just the page content as seen by a browser, what wget would retrieve, what file_get_contents('http://...') would output, etc.
-dav7