Replacement for File::mime() in Laravel 4 (to get mime type from file extension)

后端 未结 5 1006
名媛妹妹
名媛妹妹 2020-12-06 17:20

Laravel 3 had a File::mime() method which made it easy to get a file\'s mime type from its extension:

$extension = File::extension($path);
$         


        
5条回答
  •  天命终不由人
    2020-12-06 18:00

    One solution I've found is to use the Symfony HttpFoundation File class (which is already included as a dependency in Laravel 4):

    $file = new Symfony\Component\HttpFoundation\File\File($path);
    $mime = $file->getMimeType();
    

    And in fact the File class uses the Symfony MimeTypeGuesser class so this also works:

    $guesser = Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser::getInstance();
    echo $guesser->guess($path);
    

    But unfortunately I'm getting unexpected results: I'm getting text/plain instead of text/css when passing a path to a css file.

提交回复
热议问题