Table of Contents
DownloadUtility
Layer: Utility · Source: lib/utility/download-handler.php:16 (lines 16–208)
class DownloadUtility
Core utility class for handling file downloads
Docblock Metadata
| Tag | Value |
|---|---|
@category | Utility Class |
@author | M.Noermoehammad |
@license | MIT |
@version | 1.0 |
@since | Since Release 1.0 |
Inheritance
No parent, interface or trait. This is a root type.
Constants (2)
| Visibility | Name | Value | Line |
|---|---|---|---|
- | CHUNK_SIZE | 8192; | 18 |
- | DEFAULT_EXPIRY | 28800; | 19 |
Properties (0)
None declared.
Methods (9)
| Visibility | Method | Summary | Line |
|---|---|---|---|
| public static | setDownloadHeaders() | Set download headers for file delivery | 29 |
| public static | validateDownloadRequest() | Validate download request by identifier | 45 |
| public static | isHotlinkingAllowed() | Check if hotlinking is allowed based on referer | 57 |
| public static | isMimeTypeAllowed() | Check if MIME type is allowed based on settings | 77 |
| public static | deliverFile() | Deliver file to client with streaming | 91 |
| public static | getMimeType() | Get MIME type of a file | 117 |
| public static | sanitizeFilePath() | Sanitize file path to prevent traversal attacks | 143 |
| public static | isExpired() | Check if download link has expired | 164 |
| private static | getMimeTypeDictionary() | Get basic MIME type dictionary | 174 |
setDownloadHeaders()
public static function setDownloadHeaders($filename, $mimeType, $filesize)
lines 29–37 (9)
Set download headers for file delivery
| Parameter | Type | Default | Description |
|---|---|---|---|
$filename | (untyped) | required | none |
$mimeType | (untyped) | required | none |
$filesize | (untyped) | required | none |
Returns: (none declared) — void
validateDownloadRequest()
public static function validateDownloadRequest($identifier)
lines 45–48 (4)
Validate download request by identifier
| Parameter | Type | Default | Description |
|---|---|---|---|
$identifier | (untyped) | required | none |
Returns: (none declared) — bool
isHotlinkingAllowed()
public static function isHotlinkingAllowed($referer, $allowedDomains = [])
lines 57–69 (13)
Check if hotlinking is allowed based on referer
| Parameter | Type | Default | Description |
|---|---|---|---|
$referer | (untyped) | required | none |
$allowedDomains | (untyped) | [] | none |
Returns: (none declared) — bool
isMimeTypeAllowed()
public static function isMimeTypeAllowed($mimeType)
lines 77–81 (5)
Check if MIME type is allowed based on settings
| Parameter | Type | Default | Description |
|---|---|---|---|
$mimeType | (untyped) | required | none |
Returns: (none declared) — bool
deliverFile()
public static function deliverFile($filepath, $filename, $mimeType)
lines 91–109 (19)
Deliver file to client with streaming
| Parameter | Type | Default | Description |
|---|---|---|---|
$filepath | (untyped) | required | none |
$filename | (untyped) | required | none |
$mimeType | (untyped) | required | none |
Returns: (none declared) — void
getMimeType()
public static function getMimeType($filepath)
lines 117–135 (19)
Get MIME type of a file
| Parameter | Type | Default | Description |
|---|---|---|---|
$filepath | (untyped) | required | none |
Returns: (none declared) — string
sanitizeFilePath()
public static function sanitizeFilePath($filename)
lines 143–156 (14)
Sanitize file path to prevent traversal attacks
| Parameter | Type | Default | Description |
|---|---|---|---|
$filename | (untyped) | required | none |
Returns: (none declared) — string|false
isExpired()
public static function isExpired($beforeExpired)
lines 164–167 (4)
Check if download link has expired
| Parameter | Type | Default | Description |
|---|---|---|---|
$beforeExpired | (untyped) | required | none |
Returns: (none declared) — bool
getMimeTypeDictionary()
private static function getMimeTypeDictionary()
lines 174–207 (34)
Get basic MIME type dictionary
Takes no parameters.
Returns: (none declared) — array
This page is generated from source by 'tools/gendoc'. Edits will be overwritten.
