2017-04-11 3 views
2

Laravelのドキュメント(file uploads)から、ストア機能 は、ファイル名として機能する一意のIDを生成します。 アップロードやファイルを格納するための私のコードは次のとおりです。Laravelのストア機能一意のIDを取得

$path = $request->file('headerimg')->store('images'); 

$pathは次のようになります。images/sCzDxJBUnkveRLdzfhsIA7hAS8RVfPDXuJjBPgzM.jpeg

ファイル名(sCzDxJBUnkveRLdzfhsIA7hAS8RVfPDXuJjBPgzM.jpeg)を取得するにはどうすればいいのですか。今はすべてが完全なパスであるため、データベースで言うことができます。

私はPHPの爆発でこれを行うことができますが、これは当てはまりません。

ところで、getClientOriginalName()を使用すると、元のファイル名が返されます。これは、laravelが一意のIDを持つファイルを格納しているため、冗長です。

ありがとうございました。

答えて

1

あなたはこのような何か行うことができます:

$saveTo = 'images'; 
$path = $request->file('headerimg')->store($saveTo); 
$filename = substr($path, strlen($saveTo) + 1); 
+0

ありがとう!その爆発と似ているが、これを最後の手段として使用する。私はlaravel経由でのみファイル名が必要です。 – Theodoros80

2

[OK]を、どこかのフォーラムに隠された答えを見つけました。

アップロードした後、これが唯一の(パスを除く)ファイル名を返します。ここ

$request->file('headerimg')->hashName(); 

ドクhashname()

関連する問題