Ik heb geprobeerd de extensie uit een geüpload bestand te halen. Ik heb gezocht op Google, maar ik heb geen resultaten gevonden.
Het bestand bestaat al in een pad:
\Storage::get('/uploads/categories/featured_image.jpg);
Hoe kan ik de extensie van dit bestand hierboven krijgen?
Met invoervelden kan ik de extensie als volgt krijgen:
Input::file('thumb')->getClientOriginalExtension();
Bedankt.
Antwoord 1, autoriteit 100%
Getest in laravel 5.5
$extension = $request->file('file')->extension();
Antwoord 2, autoriteit 99%
De Laravel-manier
Probeer dit:
$foo = \File::extension($filename);
Antwoord 3, autoriteit 77%
Nog een andere manier om het te doen:
//Where $file is an instance of Illuminate\Http\UploadFile
$extension = $file->getClientOriginalExtension();
Antwoord 4, autoriteit 48%
Je kunt daarvoor de functie pathinfo()gebruiken die in PHP is ingebouwd:
$info = pathinfo(storage_path().'/uploads/categories/featured_image.jpg');
$ext = $info['extension'];
Of beknopter, u kunt een optie doorgeven om deze direct te krijgen;
$ext = pathinfo(storage_path().'/uploads/categories/featured_image.jpg', PATHINFO_EXTENSION);
Antwoord 5, autoriteit 18%
Als je alleen de extensie wilt, kun je pathinfo
gebruiken:
$ext = pathinfo($file_path, PATHINFO_EXTENSION);
Antwoord 6, autoriteit 5%
//working code from laravel 5.2
public function store(Request $request)
{
$file = $request->file('file');
if($file)
{
$extension = $file->clientExtension();
}
echo $extension;
}
Antwoord 7, autoriteit 2%
return $picName = time().'.'.$request->file->extension();
De functie time()
maakt de afbeelding uniek en vervolgens krijgt de .$request->file->extension()
de afbeeldingsextensie voor u.
Je kunt dit gebruiken, het werkt goed met Laravel 6 en hoger.
Antwoord 8
Doe zoiets als dit:
if($request->hasFile('video')){
$video=$request->file('video');
$filename=str_random(20).".".$video->extension();
$path = Storage::putFileAs(
'/', $video, $filename
);
$data['video']=$filename;
}
Antwoord 9
Of kan de Extension SplitterTrickster::getExtention()
functie van https://github.com/secrethash/trickster
Trickster::getExtention('some-funny.image.jpg');
Het retourneert jpg