wapmorgan / file-type-detector
Detects file type by filename or content and generates correct mimetype.
Installs: 298 966
Dependents: 5
Suggesters: 13
Security: 0
Stars: 33
Watchers: 6
Forks: 14
Open Issues: 4
Requires (Dev)
- phpunit/phpunit: ~4.8.35
README
Files type detector based on file name extension or file content (binary content).
- Usage
- Installation
- Supported formats
Usage
File Type detection
- Detection by file name:
Detector::detectByFilename(...filename...): array|boolean
- Detection by file content or stream content:
Detector::detectByContent(...filename/resource...): array|boolean
Both functions will return an array
with following elements in case of success:
[0]
- Type of file (Detector::AUDIO
and so on)[1]
- Format of file (Detector::MP3
and so on)[2]
- Mime type of file ('audio/mpeg'
for example)
In case of failure it will return false
.
Example:
$type = wapmorgan\FileTypeDetector\Detector::detectByFilename($filename); // or $type = wapmorgan\FileTypeDetector\Detector::detectByContent('file-without-extension'); // or $type = wapmorgan\FileTypeDetector\Detector::detectByContent(fopen('http://somedomain/somepath', 'r'));
Mimetype generation
To get correct mimetype for file only there is getMimeType($file)
function.
$mime = wapmorgan\FileTypeDetector\Detector::getMimeType($file); // or $mime = wapmorgan\FileTypeDetector\Detector::getMimeType(fopen('somefile', 'r'));
Installation
Install package via composer:
composer require wapmorgan/file-type-detector
Supported formats
Available to use types and their formats.
Formats support status.