Laravel:上传.sql文件时的数组到字符串转换

时间:2016-02-13 01:31:52

标签: php arrays laravel

编辑:事实证明,在尝试上传.sql文件时会出现此问题。它不是文件名。

当我尝试使用此名称上传文件时:forge_2016-02-08_--USERS THOUGH.sql我在下面显示了以下错误:

  

FileinfoMimeTypeGuesser.php第69行中的ErrorException:

     

数组到字符串转换

  

at HandleExceptions-> handleError(' 8','数组到字符串转换',' /home/forge/example.com/vendor/symfony/http- foundation / File / MimeType / FileinfoMimeTypeGuesser.php',' 69',array(' path' =>' / tmp / phppkDGK8',' ; finfo' => object(finfo)))

     

在finfo->文件(' / tmp / phppkDGK8')中FileinfoMimeTypeGuesser.php第69行

     

在fileinfoMimeTypeGuesser.php第69行中的finfo->文件(' / tmp / phppkDGK8')   在FileinfoMimeTypeGuesser->猜测(' / tmp / phppkDGK8')在MimeTypeGuesser.php第139行

我不知道为什么会发生这种错误。这是我的上传代码:

    $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;

请帮帮我们。我不知道为什么会这样。

1 个答案:

答案 0 :(得分:1)

我通过更改

修复了它
$mimeType = $file->getMimeType(); 

$mimeType = $file->getClientMimeType();

这解决了它。