PEAR_Common::downloadHttp
Synopsis
string PEAR_Common::downloadHttp (
string $url
, object &$ui
, string $save_dir = '.'
, mixed $callback
= null
)
Description
Download a file through HTTP. Considers suggested file name in Content-disposition: header and can run a callback function for different events. The callback will be called with two parameters: the callback type, and parameters. The implemented callback types are:
-
'setup'- called at the very beginning, parameter is a UI object that should be used for all output -
'message'- the parameter is a string with an informational message -
'saveas'- may be used to save with a different file name, the parameter is the filename that is about to be used. If a'saveas'callback returns a non-empty string, that file name will be used as the filename instead. Note that$save_dirwill not be affected by this, only the basename of the file. -
'start'- download is starting, parameter is number of bytes that are expected, or -1 if unknown -
'bytesread'- parameter is the number of bytes read so far -
'done'- download is complete, parameter is the total number of bytes read -
'connfailed'- if the TCP connection fails, this callback is called with<?php
array(host,port,errno,errmsg)
?> -
'writefailed'- if writing to disk fails, this callback is called with<?php
array(destfile,errmsg)
?>
If an HTTP proxy has been configured
(http_proxy PEAR_Config setting),
the proxy will be used.
Parameter
-
string
$url -
the URL to download
-
object
&$ui -
PEAR_Frontend_* instance
-
string
$save_dir -
directory to save file in
-
mixed
$callback -
function/method to call for status updates
-
object
$config -
PEAR_Config instance
Return value
string -
Returns the full path of the downloaded file or a
PEAR error on failure. If the error is caused by
socket-related errors, the error object will
have the fsockopen error code available through
getCode().
Throws
| Error code | Error value | Meaning | Solution |
|---|---|---|---|
| " |
Note
This function can not be called statically.