麻烦看一个怪异文件上传 The file "C:\Windows\phpA100.tmp" does not exist

项目是基于laravel-admin的一个后台,功能是一个表单提交并且需要上传图片,提交后问题就来了,图片能上传成功,但是会爆错:

The file “C:\Windows\phpA100.tmp” does not exist

dd()是没有问题的,没有报错。
处理图片的代码:

 public function upload(UploadedFile $file, $type = FileModel::TYPE_DEFAULT, $ext = NULL,$info = NULL,$cover = false,$user_id='',$activity_id='')
    {
        return DB::transaction(function () use ($file, $type, $ext,$info,$cover,$user_id,$activity_id) {
            $path = 'upload/' . date('Ymd');
            if ($file instanceof HttpUploadedFile) {
                $ext  = $ext ?: ($file->getClientOriginalExtension() ?: $file->guessClientExtension());
                $name = $file->getClientOriginalName();
                $size = $file->getClientSize();
            } else {
                $ext  = $ext ?: $file->getExtension();
                $name = $file->getFilename();
                $size = $file->getSize();
            }
            $file_name = time() . mt_rand(10000, 99999) . '.' . $ext;
            $file->move(public_path($path), $file_name);
            $uploadinfo = array(
                'name' => $name,
                'path' => $path,
                'file' => $file_name,
                'size' => $size,
                'type' => $type,
                'file_catalog_id' => 1
                );
            $info_field = array('activity_id' => null,'activity_period_id' => null,'file_catalog_id' => null );
            if($info){
                if($addinfo = array_intersect_key($info,$info_field)){
                    $uploadinfo = array_merge($uploadinfo,$addinfo);
                }
            }

            \Log::info('upload', $uploadinfo);
            if($cover){
                $result = $this->updateOrCreate(['owner_id'=>$user_id,'activity_id'=>$activity_id],$uploadinfo);
            }else{
                $result = $this->create($uploadinfo);
            }
            $this->dispatch(new Convert($result));

            return $result;
        });
    }

错误日志:

[2020-07-08 10:30:58] local.INFO: upload {"name":"about.jpg","path":"upload/20200708","file":"159417545829049.jpg","size":86532,"type":1,"file_catalog_id":1} 
[2020-07-08 10:30:58] local.ERROR: The file "C:\Windows\phpA100.tmp" does not exist {"exception":"[object] (Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException(code: 0): The file \"C:\\Windows\\phpA100.tmp\" does not exist at E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\File\\File.php:36)
[stacktrace]
#0 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\File\\UploadedFile.php(77): Symfony\\Component\\HttpFoundation\\File\\File->__construct('C:\\\\Windows\\\\phpA...', true)
#1 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(87): Symfony\\Component\\HttpFoundation\\File\\UploadedFile->__construct('C:\\\\Windows\\\\phpA...', 'about.jpg', 'image/jpeg', 0, false)
#2 [internal function]: Symfony\\Component\\HttpFoundation\\FileBag->convertFileInformation(Array)
#3 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(90): array_map(Array, Array)
#4 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(52): Symfony\\Component\\HttpFoundation\\FileBag->convertFileInformation(Array)
#5 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(61): Symfony\\Component\\HttpFoundation\\FileBag->set('file', Array)
#6 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(40): Symfony\\Component\\HttpFoundation\\FileBag->add(Array)
#7 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\FileBag.php(31): Symfony\\Component\\HttpFoundation\\FileBag->replace(Array)
#8 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\Request.php(269): Symfony\\Component\\HttpFoundation\\FileBag->__construct(Array)
#9 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\Request.php(247): Symfony\\Component\\HttpFoundation\\Request->initialize(Array, Array, Array, Array, Array, Array, NULL)
#10 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\Request.php(1988): Symfony\\Component\\HttpFoundation\\Request->__construct(Array, Array, Array, Array, Array, Array, NULL)
#11 E:\\www\\minisite-git\\vendor\\symfony\\http-foundation\\Request.php(293): Symfony\\Component\\HttpFoundation\\Request::createRequestFromFactory(Array, Array, Array, Array, Array, Array)
#12 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Request.php(59): Symfony\\Component\\HttpFoundation\\Request::createFromGlobals()
#13 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Form.php(384): Illuminate\\Http\\Request::capture()
#14 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Form.php(553): Encore\\Admin\\Form->ajaxResponse('\\xE6\\x9B\\xB4\\xE6\\x96\\xB0\\xE6\\x88\\x90\\xE5\\x8A\\x9F !')
#15 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Controllers\\HasResourceActions.php(16): Encore\\Admin\\Form->update('72')
#16 [internal function]: Encore\\Admin\\Controllers\\AdminController->update('72')
#17 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): call_user_func_array(Array, Array)
#18 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(45): Illuminate\\Routing\\Controller->callAction('update', Array)
#19 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(212): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Admin\\Controllers\\ActivityController), 'update')
#20 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(169): Illuminate\\Routing\\Route->runController()
#21 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(665): Illuminate\\Routing\\Route->run()
#22 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(30): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#23 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Middleware\\Permission.php(46): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#24 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Encore\\Admin\\Middleware\\Permission->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Middleware\\Bootstrap.php(15): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#27 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Encore\\Admin\\Middleware\\Bootstrap->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Middleware\\LogOperation.php(38): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#30 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Encore\\Admin\\Middleware\\LogOperation->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#31 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#32 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Middleware\\Pjax.php(24): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#33 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Encore\\Admin\\Middleware\\Pjax->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 E:\\www\\minisite-git\\vendor\\encore\\laravel-admin\\src\\Middleware\\Authenticate.php(26): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#36 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Encore\\Admin\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(41): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#39 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(68): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#42 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(49): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#45 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#48 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(37): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#51 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(66): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#54 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(104): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#57 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(667): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#58 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(642): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#59 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(608): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#60 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(597): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#61 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(176): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#62 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(30): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#63 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(31): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#64 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#65 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#66 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(31): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#67 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#70 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#71 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#72 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode.php(62): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#73 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(151): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#74 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#75 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(104): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#76 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(151): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#77 E:\\www\\minisite-git\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#78 E:\\www\\minisite-git\\public\\index.php(53): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#79 {main}
"}
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 1

php.ini upload_tmp_dir 设置一下,试试

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!