http_get

(PECL pecl_http >= 0.1.0)

http_getPerform GET request

Description

string http_get ( string $url [, array $options [, array &$info ]] )

Performs an HTTP GET request on the supplied url.

See the full list of request options.

Parameters

url

URL

options

request options

info

Will be filled with request/response information

Return Values

Returns the HTTP response(s) as string on success, or FALSE on failure.

Examples

Example #1 A http_get() example

<?php
$response 
http_get("http://www.example.com/", array("timeout"=>1), $info);
print_r($info);
?>

The above example will output:

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' => '',
)

add a note add a note

User Contributed Notes 3 notes

up
6
tjerk dot meesters at muvee dot com
17 years ago
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)
up
5
tac at smokescreen dot org
18 years ago
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.
up
0
php at dav7 dot net
16 years ago
[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
To Top