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

Php 如何重命名必须上载并保存到文件夹的文件,php,html,laravel,Php,Html,Laravel,我想上传图像并将其保存到存储/app/logos 我想用用户在输入中插入的信息来重命名它。我已经做了一个dd()并且它工作得很好 我已尝试更改“另存为”。但在将文件保存到文件夹时,它会保存一个不可读的文件,名为$name {{csrf_field()}} 书名: 标志: 这是我的控制器: 您正在引用变量名,因此它将成为一个字符串 $request->file('logo')->storeAs('logo',$name); 从 指定文件名 如果不希望将文件名自动分配给存储的文件,可以

我想上传图像并将其保存到
存储/app/logos

我想用用户在输入中插入的信息来重命名它。我已经做了一个
dd()并且它工作得很好

我已尝试更改“另存为”。但在将文件保存到文件夹时,它会保存一个不可读的文件,名为
$name


{{csrf_field()}}
书名:



标志:


这是我的控制器:


您正在引用变量名,因此它将成为一个字符串

$request->file('logo')->storeAs('logo',$name);

指定文件名
如果不希望将文件名自动分配给存储的文件,可以使用
storeAs
方法,该方法接收路径、文件名和(可选)磁盘作为参数:

$path=$request->file('avatar')->storeAs(
'化身',$request->user()->id
);

希望这有助于您自己完成以下任务:

// initializing file name with null
$data['logo'] = null;

if ($request->hasFile("logo")) {
        $fileName = md5(time() . rand()) . "." . pathinfo($request->photo- 
                    >getClientOriginalName(), PATHINFO_EXTENSION);
        $destinationPath = storage_path('/app/logos/');
        $request->photo->move($destinationPath,$fileName);
        $data['logo'] = $fileName; // storing filename
}