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.
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);
À la manière de Laravel
Essaye ça:
$foo = \File::extension($filename);
Encore une autre façon de le faire:
//Where $file is an instance of Illuminate\Http\UploadFile
$extension = $file->getClientOriginalExtension();
Testé en laravel 5.5
$extension = $request->file('file')->extension();
Si vous voulez seulement l'extension, vous pouvez utiliser pathinfo
:
$ext = pathinfo($file_path, PATHINFO_EXTENSION);
//working code from laravel 5.2
public function store(Request $request)
{
$file = $request->file('file');
if($file)
{
$extension = $file->clientExtension();
}
echo $extension;
}
Ou pouvez utiliser la fonction Extension SplitterTrickster::getExtention()
de https://github.com/secrethash/trickster
Trickster::getExtention('some-funny.image.jpg');
Il retourne jpg