https://github.com/autoframe/components-filemime
PHP server side file mime SOLID
https://github.com/autoframe/components-filemime
Last synced: about 1 year ago
JSON representation
PHP server side file mime SOLID
- Host: GitHub
- URL: https://github.com/autoframe/components-filemime
- Owner: autoframe
- License: mit
- Created: 2023-05-01T11:45:33.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-06-04T22:27:34.000Z (about 3 years ago)
- Last Synced: 2025-02-18T01:40:22.689Z (over 1 year ago)
- Language: PHP
- Size: 71.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Autoframe is a low level framework that is oriented on SOLID flexibility
[](https://github.com/autoframe/components-filemime/actions?query=branch:main)
[](https://opensource.org/licenses/MIT)

[](https://packagist.org/packages/autoframe/components-filemime)
*PHP server side file mime SOLID*
Namespace:
- Autoframe\\Component\\FileMime
Class is a SINGLETON:
- AfrFileMimeClass + AfrFileMimeInterface + AfrFileMimeTrait
- Methods:
- getFileMimeTypes: array *[... 'image/jpeg' => ['jpeg','jpg','jpe'], ...]*
- getFileMimeExtensions: array *[... 'jpeg' => 'image/jpeg', ...]*
- getFileMimeFallback: string *'application/octet-stream'*
- getAllMimesFromFileName: array *Input: '/dir/test.wmz' Output: ['application/x-ms-wmz','application/x-msmetafile'] (wmz extension has multiple mimes)*
- getMimeFromFileName: string *Input: '/dir/test.jpg' Output: 'image/jpeg'*
- getExtensionsForMime: array *Input: 'image/jpeg' Output: ['jpeg','jpg','jpe']*
- getExtensionFromPath: string *Input: '/dir/test.jpg' Output: 'jpg'*
Traits:
- AfrFileMimeTypes *public static array $aAfrFileMimeTypes = [...]*
- AfrFileMimeExtensions *public static array $aAfrFileMimeExtensions = [...]*
Utility class reads/updates the file 'mime.types' and writes new traits AfrFileMimeExtensions and AfrFileMimeTypes
- AfrFileMimeGeneratorClass
- Runs only in local tests (not from inside vendor dir)
- mime.types is updated from https://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types