SplFileInfo::getSize(): 统计失败

尝试将图像上传到 laravel 存储时出现错误。


SplFileInfo::getSize(): C:\xampp\tmp\php3624.tmp 的统计失败


但我什至没有使用 SplFileInfo 函数。这是我的代码。


public function store(Request $request)

    {

        $this->validate($request, [

            'title' => 'required|max:191',

            'sub_title' => 'required|max:191',

            'description' => 'required',

            'active' => 'required',

            'img' => 'image|mimes:jpg,png,svg,gif,jpeg|max:2048'

        ]);


        $services = new Services;

        if($request->hasFile('img')){

            $imageName = time().'_NEWS.'.$request->file('img')->getClientOriginalExtension();

            // dd($request->file('img')->getMaxFilesize());

            $services->news_image = $imageName;

            $request->file('img')->move(public_path('storage/services/'), $imageName);



        }

        $services->title = $request->input('title');

        $services->sub_title = $request->input('sub_title');

        $services->description = $request->input('description');

        $services->active = $request->input('ative');

        $services->save();


        return redirect('/admin/services')->with('success', 'Succesvol een behandeling aangemaakt');

    }

我希望有人可以在这里帮助我。我已经知道它是一个 Symfony 错误,但我找不到任何问题的答案。我已经改变了我的


post_max_size=40M 和 upload_max_filesize=40M


在 PHP.ini 中,所以这不会是问题。


森林海
浏览 282回答 2
2回答

偶然的你

发生错误是因为您已 move()d 文件,然后 getSize()d 对象。尝试设置一个变量并分配大小,然后移动文件。{     ...     $size=$request->file('img')->getSize();     $request->file('img')->move(public_path('storage/services/'), $imageName);}

慕哥6287543

这帮助我解决了这个问题。也许不是最好的解决方案,但它对我有用。    public function store(Request $request){    $this->validate($request, [        'title' => 'required|max:191',        'sub_title' => 'required|max:191',        'description' => 'required',        'active' => 'required',        'img' => 'image|mimes:jpg,png,svg,gif,jpeg|max:2048'    ]);    $services = new Services;    if($request->hasFile('img')){        $imageName = time().'_NEWS.'.$request->file('img')->getClientOriginalExtension();        // dd($request->file('img')->getMaxFilesize());        $services->news_image = $imageName;        $request->file('img')->move(public_path('storage/services/'), $imageName);        $size=$request->file('img')->getSize();       }    $services->title = $request->input('title');    $services->sub_title = $request->input('sub_title');    $services->description = $request->input('description');    $services->active = $request->input('ative');    $services->save();    return redirect('/admin/services')->with('success', 'Succesvol een behandeling aangemaakt')->with($size);}
打开App,查看更多内容
随时随地看视频慕课网APP