web-dev-qa-db-ja.com

laravelで拡張子なしのファイル名を取得しますか?

Input::file('upfile')->getClientOriginalName()を使用してアップロードされたファイルの名前を取得しましたが、qwe.jpgのような拡張子を持つ名前を付けました。laravelでqweのような拡張子のない名前を取得する方法.

27
Sumit

LaravelはInput::file()メソッドによって返されるSymfony UploadedFileコンポーネントを使用します。

ファイル名を取得するメソッドがないため、phpネイティブ関数pathinfo()を使用できます。

pathinfo(Input::file('upfile')->getClientOriginalName(), PATHINFO_FILENAME);
54
Maxim Lanin

これを試すことができます

$file = Input::file('upfile')->getClientOriginalName();

$filename = pathinfo($file, PATHINFO_FILENAME);
$extension = pathinfo($file, PATHINFO_EXTENSION);

echo $filename . ' ' . $extension; // 'qwe jpg'
21
Pantelis Peslis

Laravel 5.2で

リクエストを使用すると、エイリアス配列のアプリファイルに既に存在します

元のファイル名を取得するには

$request->file('upfile')->getClientOriginalName();

拡張子なしのファイル名を取得するには

basename($request->file('upfile')->getClientOriginalName(), '.'.$request->file('upfile')->getClientOriginalExtension());
11
Sethu

ここでは、php PATHINFO_FILENAMEを呼び出す必要があります

$file = $request->file('fileupload')->getClientOriginalName();
$fileName = pathinfo($file,PATHINFO_FILENAME);
dd($fileName);
4
Muhammad Kazim

これはかなりきれいです:

  $fileName = pathinfo($fullFileName)['filename'];
4

GetClientOriginalName()を使用してファイル名を取得します。次に、explode関数を使用して、次のように名前と画像形式を取得します。

$image=Input::file('image'); $fullName=$image->getClientOriginalName(); $name=explode('.',$fullName)[0];

3
TechPotter

このコードを使用して、Laravel 5.2。*で作業します。

$file=$request->file('imagefile');
$imgrealpath= $file->getRealPath(); 
$nameonly=preg_replace('/\..+$/', '', $file->getClientOriginalName());
$fullname=$nameonly.'.'.$file->getClientOriginalExtension();
2

これを試して:

    $fullName = Input::file('image')->getClientOrginalName();
    $extension = Input::file('image')->getClientOrginalExtension();
    $onlyName = explode('.'.$extension,$fullName);

またはこれ:

    $fullName = Input::file('image')->getClientOrginalName();
    $extension = Input::file('image')->getClientOrginalExtension();

    $fullNameLenght = strlen($fullName);
    $extensionLenght = strlen($extension);
    $nameLength = $fullNameLenght - ($extensionLength + 1);
    $onlyName = strpos($fullName, 0, $nameLength);
1
smartrahat
preg_replace('/\..+$/', '', 'qwe.jpg')

または

explode('.', 'qwe.jpg')[0]
1
silent

このコードも使用できます。

    if ($request->hasfile('filename')) {
        $image = $request->filename;
        $namewithextension = $image->getClientOriginalName(); //Name with extension 'filename.jpg'
        $name = explode('.', $namewithextension)[0]; // Filename 'filename'
        $extension = $image->getClientOriginalExtension(); //Extension 'jpg'
        $uploadname = time() . '.' . $extension;
        $image->move(public_path() . '/uploads/', $uploadname);
    }
1
Mete YILMAZ

これを使用できます

Input::file('upfile')->getClientOriginalExtension()
0
mehfooz

Laravel 5.4またはLumen 5.4では、これは有用なリソースになる可能性があります here

0
rc.adhikari