web-dev-qa-db-fra.com

Obtenir une extension d'image à partir d'un fichier téléchargé dans Laravel

J'ai essayé d'obtenir l'extension à partir d'un fichier téléchargé, en recherchant sur Google, je n'ai aucun résultat.

Le fichier existe déjà dans un chemin:

\Storage::get('/uploads/categories/featured_image.jpg);

Maintenant, comment puis-je obtenir l'extension de ce fichier ci-dessus?

En utilisant les champs de saisie, je peux obtenir l’extension comme ceci:

Input::file('thumb')->getClientOriginalExtension();

Merci.

18
Italo Borges

Vous pouvez utiliser la fonction pathinfo () intégrée dans PHP pour cela:

$info = pathinfo(storage_path().'/uploads/categories/featured_image.jpg');
$ext = $info['extension'];

Ou plus simplement, vous pouvez choisir une option pour l’obtenir directement;

$ext = pathinfo(storage_path().'/uploads/categories/featured_image.jpg', PATHINFO_EXTENSION);
16
Jeremy Harris

À la manière de Laravel

Essaye ça:

$foo = \File::extension($filename);
31
Alfredo EM

Encore une autre façon de le faire:

//Where $file is an instance of Illuminate\Http\UploadFile
$extension = $file->getClientOriginalExtension();
21
Daniel Camargo

Testé en laravel 5.5

$extension = $request->file('file')->extension();
15
Amir Hossein

Si vous voulez seulement l'extension, vous pouvez utiliser pathinfo:

$ext = pathinfo($file_path, PATHINFO_EXTENSION);
7
aynber
 //working code from laravel 5.2

 public function store(Request $request)
 {
          $file = $request->file('file');
            if($file)
            {
                    $extension =  $file->clientExtension();
            }
            echo $extension;
 }
3
BCPNAYAK

Ou pouvez utiliser la fonction Extension SplitterTrickster::getExtention() de https://github.com/secrethash/trickster

Trickster::getExtention('some-funny.image.jpg');Il retourne jpg

0
secrethash