function ExtensionMimeTypeGuesser::setMapping

Same name in this branch
  1. 11.x core/lib/Drupal/Core/ProxyClass/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\ProxyClass\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
Same name and namespace in other branches
  1. 10 core/lib/Drupal/Core/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  2. 10 core/lib/Drupal/Core/ProxyClass/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\ProxyClass\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  3. 9 core/lib/Drupal/Core/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  4. 9 core/lib/Drupal/Core/ProxyClass/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\ProxyClass\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  5. 8.9.x core/lib/Drupal/Core/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  6. 8.9.x core/lib/Drupal/Core/ProxyClass/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\ProxyClass\File\MimeType\ExtensionMimeTypeGuesser::setMapping()
  7. main core/lib/Drupal/Core/ProxyClass/File/MimeType/ExtensionMimeTypeGuesser.php \Drupal\Core\ProxyClass\File\MimeType\ExtensionMimeTypeGuesser::setMapping()

Sets the mimetypes/extension mapping to use when guessing mimetype.

Parameters

array|null $mapping: Passing a NULL mapping will cause guess() to use self::$defaultMapping.

Deprecated

in drupal:11.2.0 and is removed from drupal:12.0.0. Use \Drupal\Core\File\MimeType\MimeTypeMapInterface::addMapping() instead.

See also

https://www.drupal.org/node/3494040

File

core/lib/Drupal/Core/File/MimeType/ExtensionMimeTypeGuesser.php, line 968

Class

ExtensionMimeTypeGuesser
Makes possible to guess the MIME type of a file using its extension.

Namespace

Drupal\Core\File\MimeType

Code

public function setMapping(?array $mapping = NULL) : void {
  @trigger_error(__METHOD__ . '() is deprecated in drupal:11.2.0 and is removed from drupal:12.0.0. Use \\Drupal\\Core\\File\\MimeType\\MimeTypeMapInterface::addMapping() instead or define your own MimeTypeMapInterface implementation. See https://www.drupal.org/node/3494040', E_USER_DEPRECATED);
  // Convert the mapping to be keyed by type.
  $typeMapping = [];
  foreach ($mapping['mimetypes'] as $index => $mimetype) {
    $typeMapping[$mimetype] = array_keys($mapping['extensions'], $index);
  }
  $this->map = new MimeTypeMap();
  foreach ($typeMapping as $type => $extensions) {
    foreach ($extensions as $extension) {
      $this->map
        ->addMapping($type, $extension);
    }
  }
  \Drupal::service('event_dispatcher')->dispatch(new MimeTypeMapLoadedEvent($this->map));
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.