如何重命名必须上传并保存到文件夹的文件

我要上传图片并将其保存到storage/app/logos

我想用用户在输入中插入的信息来重命名它。我已经做过dd();,并且效果很好。

我已经尝试更改另存为。但是,要将文件保存在文件夹中时,它会保存一个不可读的文件并命名为$name

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<form action="emp" method="POST" enctype="multipart/form-data">
    {{ csrf_field() }}
    Book title:
    <br />
    <input type="text" name="title" />
    <br /><br />
    Logo:
    <br />
    <input type="file" name="logo" />
    <br /><br />
    <input type="submit" value=" Save " />
</form>
</body>
</html>

这是我的控制器:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class empController extends Controller
{
    public function store(Request $request)
    {
        $name = $request->input('title');
        $request->logo->storeAs('logos','$name');
    }
}
ggtvmtv 回答:如何重命名必须上传并保存到文件夹的文件

您引用了变量名,因此它变成了一个字符串

PRODUCT INVENTOR1 INVENTOR2
1        ROSE      EMMA
2         BEN

来自the docs

指定文件名
如果您不希望将文件名自动分配给存储的文件,则可以使用$request->file('logo')->storeAs('logos',$name); 方法,该方法接收路径,文件名和(可选)磁盘作为参数:

storeAs

希望这会有所帮助

,

如果您想自己做:

git push -u origin feat/XYZ-1234-some-description:feat/XYZ-5678-a-different-description # also works
本文链接:https://www.f2er.com/3165744.html

大家都在问