アップロードされたファイルから拡張機能を取得しようとしましたが、Googleで検索しましたが、結果がありませんでした。
ファイルはすでにパスに存在します:
\Storage::get('/uploads/categories/featured_image.jpg);
今、どうすれば上記のこのファイルの拡張子を取得できますか?
入力フィールドを使用して、次のような拡張機能を取得できます。
Input::file('thumb')->getClientOriginalExtension();
ありがとう。
PHPに組み込まれている pathinfo() 関数を使用できます:
$info = pathinfo(storage_path().'/uploads/categories/featured_image.jpg');
$ext = $info['extension'];
もっと簡潔に言うと、オプションを渡して直接取得することができます。
$ext = pathinfo(storage_path().'/uploads/categories/featured_image.jpg', PATHINFO_EXTENSION);
Laravel方法
これを試して:
$foo = \File::extension($filename);
それを行う別の方法:
//Where $file is an instance of Illuminate\Http\UploadFile
$extension = $file->getClientOriginalExtension();
laravel 5.5でテスト済み
$extension = $request->file('file')->extension();
拡張機能だけが必要な場合は、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;
}
またはExtension SplitterTrickster::getExtention()
function of https://github.com/secrethash/trickster を使用できます=
Trickster::getExtention('some-funny.image.jpg');
jpg
を返します