\Symfony\Component\HttpFoundation\File\MimeTypeMimeTypeGuesser

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'));

Summary

Methods
Properties
Constants
getInstance()
reset()
register()
guess()
No public properties found
No constants found
No protected methods found
$guessers
N/A
__construct()
$instance
N/A

Properties

$guessers

$guessers : array

All registered MimeTypeGuesserInterface instances.

Type

array

Methods

getInstance()

getInstance() : self

Returns the singleton instance.

Returns

self

reset()

reset() 

Resets the singleton instance.

guess()

guess(string  $path) : string

Tries to guess the mime type of the given file.

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

string $path

The path to the file

Throws

\LogicException
\Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException
\Symfony\Component\HttpFoundation\File\Exception\AccessDeniedException

Returns

string —

The mime type or NULL, if none could be guessed

__construct()

__construct() 

Registers all natively provided mime type guessers.