Laravel存储上传图像和文件

时间:2018-01-10 12:17:31

标签: laravel storage

我试图在我的存储空间中保存来自我的请求的图像,但发生了一些奇怪的事情:我有以下代码

$ request-> file ('UploadIMG') -> store ('public'. '/'. 'clients');

执行时将图像保存在以下位置

storage \ app \ public \ clients \ dUpBTL0V25h2Q1825IUmvvIZhcwVPixLaVDdItuG.jpg

我想更改此值并设置名称,因此我使用了以下代码

Storage :: disk ('local') -> put ('clients'.'/'.$ fileName, $Image, 'public');

让我说当我运行它创建的存储时,我的$ fileName的值为01.jpg

storage \ app \ clients \ 01.jpg \ dUpBTL0V25h2Q1825IUmvvIZhcwVPixLaVDdItuG.jpg

它最终会创建一个包含图像名称的文件夹,并使用随机名称放置图像,如何获取图像的名称?

2 个答案:

答案 0 :(得分:2)

    $file = $request->file('pic');
    $picName = $file->getClientOriginalName();
    $imagePath = '/public/clients';
    $file->move(public_path($imagePath), $picName);

答案 1 :(得分:1)

您可以使用storeAs()方法保存上传文件并命名:

$request->file('UploadIMG')->storeAs('public/clients', $fileName);