PHP Interface FOF30\Download\DownloadInterface

Mostra file Open project: akeeba/fof Interface Usage Examples

Public Methods

Method Description
downloadAndReturn ( string $url, integer $from = null, integer $to = null, array $params = [] ) : string Download a part (or the whole) of a remote URL and return the downloaded data. You are supposed to check the size of the returned data. If it's smaller than what you expected you've reached end of file. If it's empty you have tried reading past EOF. If it's larger than what you expected the server doesn't support chunk downloads.
getFileSize ( string $url ) : integer Get the size of a remote file in bytes
getName ( ) : string Returns the name of this download adapter in use
getPriority ( ) : boolean Get the priority of this adapter. If multiple download adapters are supported on a site, the one with the highest priority will be used.
isSupported ( ) : boolean Is this download class supported in the current server environment?
supportsChunkDownload ( ) : boolean Does this download adapter support downloading files in chunks?
supportsFileSize ( ) : boolean Does this download adapter support reading the size of a remote file?

Method Details

downloadAndReturn() public method

If this class' supportsChunkDownload returns false you should assume that the $from and $to parameters will be ignored.
public downloadAndReturn ( string $url, integer $from = null, integer $to = null, array $params = [] ) : string
$url string The remote file's URL
$from integer Byte range to start downloading from. Use null for start of file.
$to integer Byte range to stop downloading. Use null to download the entire file ($from is ignored)
$params array Additional params that will be added before performing the download
return string The raw file data retrieved from the remote URL.

getFileSize() public method

Get the size of a remote file in bytes
public getFileSize ( string $url ) : integer
$url string The remote file's URL
return integer The file size, or -1 if the remote server doesn't support this feature

getName() public method

Returns the name of this download adapter in use
public getName ( ) : string
return string

getPriority() public method

Get the priority of this adapter. If multiple download adapters are supported on a site, the one with the highest priority will be used.
public getPriority ( ) : boolean
return boolean

isSupported() public method

Is this download class supported in the current server environment?
public isSupported ( ) : boolean
return boolean True if this server environment supports this download class

supportsChunkDownload() public method

Does this download adapter support downloading files in chunks?
public supportsChunkDownload ( ) : boolean
return boolean True if chunk download is supported

supportsFileSize() public method

Does this download adapter support reading the size of a remote file?
public supportsFileSize ( ) : boolean
return boolean True if remote file size determination is supported