private function loadMimeFileTypes(string $mimeFile)
{
$mimeFile = str_replace('\\', '/', $mimeFile);
$mimeStr = @file_get_contents($mimeFile);
if ($mimeStr === false) {
throw new \RuntimeException("Failed loading mime associations from file {$mimeFile}");
}
if (!preg_match_all('#\\s*([a-z0-9]+)\\s+([a-z0-9\\-]+/[a-z0-9\\-]+(?:\\+[a-z0-9\\-]+)?)#i', $mimeStr, $matches)) {
throw new \RuntimeException("No mime associations found in file: {$mimeFile}");
}
$mimeTypes = [];
foreach ($matches[1] as $key => $value) {
$mimeTypes[strtolower($value)] = $matches[2][$key];
}
$this->mimeFileTypes = $mimeTypes;
}