MimeTypeGuesser
in package
implements
MimeTypeGuesserInterface
A singleton mime type guesser.
By default, all mime type guessers provided by the framework are installed (if available on the current OS/PHP setup).
You can register custom guessers by calling the register() method on the singleton instance. Custom guessers are always called before any default ones.
$guesser = MimeTypeGuesser::getInstance();
$guesser->register(new MyCustomMimeTypeGuesser());
If you want to change the order of the default guessers, just re-register your preferred one as a custom one. The last registered guesser is preferred over previously registered ones.
Re-registering a built-in guesser also allows you to configure it:
$guesser = MimeTypeGuesser::getInstance();
$guesser->register(new FileinfoMimeTypeGuesser('/path/to/magic/file'));
Tags
Interfaces, Classes, Traits and Enums
- MimeTypeGuesserInterface
- Guesses the mime type of a file.
Table of Contents
- $guessers : array<string|int, mixed>
- All registered MimeTypeGuesserInterface instances.
- $instance : MimeTypeGuesser
- The singleton instance.
- getInstance() : self
- Returns the singleton instance.
- guess() : string
- Tries to guess the mime type of the given file.
- register() : mixed
- Registers a new mime type guesser.
- reset() : mixed
- Resets the singleton instance.
- __construct() : mixed
- Registers all natively provided mime type guessers.
Properties
$guessers
All registered MimeTypeGuesserInterface instances.
protected
array<string|int, mixed>
$guessers
= []
$instance
The singleton instance.
private
static MimeTypeGuesser
$instance
= null
Methods
getInstance()
Returns the singleton instance.
public
static getInstance() : self
Return values
self —guess()
Tries to guess the mime type of the given file.
public
guess(string $path) : string
The file is passed to each registered mime type guesser in reverse order of their registration (last registered is queried first). Once a guesser returns a value that is not NULL, this method terminates and returns the value.
Parameters
- $path : string
-
The path to the file
Tags
Return values
string —The mime type or NULL, if none could be guessed
register()
Registers a new mime type guesser.
public
register(MimeTypeGuesserInterface $guesser) : mixed
When guessing, this guesser is preferred over previously registered ones.
Parameters
- $guesser : MimeTypeGuesserInterface
Return values
mixed —reset()
Resets the singleton instance.
public
static reset() : mixed
Return values
mixed —__construct()
Registers all natively provided mime type guessers.
private
__construct() : mixed