简体   繁体   English

Laravel:上载.sql文件时将数组转换为字符串

[英]Laravel: Array to string conversion while uploading .sql files

Edit: It turns out this issue happens while trying to upload .sql files. 编辑:事实证明,尝试上载.sql文件时会发生此问题。 It's not the file name. 不是文件名。

When I try to upload a file with this name: forge_2016-02-08_--USERS THOUGH.sql I'm shown this error below: 当我尝试上传具有以下名称的文件时: forge_2016-02-08_--USERS THOUGH.sql ,在下面显示此错误:

ErrorException in FileinfoMimeTypeGuesser.php line 69: FileinfoMimeTypeGuesser.php第69行中的ErrorException:

Array to string conversion 数组到字符串的转换

and

at HandleExceptions->handleError('8', 'Array to string conversion', '/home/forge/example.com/vendor/symfony/http-foundation/File/MimeType/FileinfoMimeTypeGuesser.php', '69', array('path' => '/tmp/phppkDGK8', 'finfo' => object(finfo))) 在HandleExceptions-> handleError('8','Array to string conversion','/home/forge/example.com/vendor/symfony/http-foundation/File/MimeType/FileinfoMimeTypeGuesser.php','69',array( '路径'=>'/ tmp / phppkDGK8','finfo'=> object(finfo)))

at finfo->file('/tmp/phppkDGK8') in FileinfoMimeTypeGuesser.php line 69 在FileinfoMimeTypeGuesser.php第69行的finfo-> file('/ tmp / phppkDGK8')中

at finfo->file('/tmp/phppkDGK8') in FileinfoMimeTypeGuesser.php line 69 at FileinfoMimeTypeGuesser->guess('/tmp/phppkDGK8') in MimeTypeGuesser.php line 139 在FileinfoMimeTypeGuesser.php的finfo-> file('/ tmp / phppkDGK8')在FileinfoMimeTypeGuesser-> guess('/ tmp / phppkDGK8')在MimeTypeGuesser.php 139行

I have no idea why this error is happening. 我不知道为什么会发生此错误。 Here's my upload code: 这是我的上传代码:

    $baseDir = storage_path('uploads');

    $file = $request->file('file');
    $mimeType = $file->getMimeType();
    $name = str_random(6) . time() . '-' . str_replace(' ', '_', Str::ascii($file->getClientOriginalName()));
    $file->move($baseDir, $name);

    $path = $baseDir . '/' . $name;
    $data = ['path' => $path, 'ip' => userIP(), 'name' => $file->getClientOriginalName(), 'mime' => $mimeType, 'size' => $file->getClientSize()];
    $status = Uploads::create($data);

    if ($status) {
          $su = true;

Please help guys. 请帮助大家。 I don't know why this is happening. 我不知道为什么会这样。

I fixed it by changing 我通过更改来解决

$mimeType = $file->getMimeType(); 

to

$mimeType = $file->getClientMimeType();

This fixed it. 这样就解决了。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM