1

好吧,我已经将一个应用程序上传到 Heroku,但我发现我无法将文件上传到它。然后我开始使用 Dropbox 作为存储选项,我做了一些测试,发送和检索链接,一切都很好。

现在,问题是在 DropboxAdapter 上使用 uploadFile() 方法。他接受一个资源作为文件,而我没有很好地工作。我做了一些测试,仍然没有办法。这是我正在做的事情,如果有人能指出解决方案或解决这个问题的方向,请。:)

这是我更新用户的实际代码(更新用户图像,并获取文件的链接)。

        $input = $_FILES['picture'];
        $inputName = $input['name'];
        $image = imagecreatefromstring(file_get_contents($_FILES['picture']['tmp_name']));

        Storage::disk('dropbox')->putStream('/avatars/' . $inputName, $image);

        // $data = Storage::disk('dropbox')->getLink('/avatars/' . $inputName);


        return dd($image);

在一些测试中,使用 fopen() 到磁盘上的文件中,并执行相同的过程,我注意到了这一点:

这是我对存储在公共文件夹中的文件使用 fopen()

http://i.imgur.com/07ZiZD5.png

而这个,当我死了(var_dump())我试图创建的 $image 。(这是来自这两个链接的建议:PHP 临时文件上传无效的图像资源Dropbox 在脚本中上传

http://i.imgur.com/pSv6l1k.png

任何的想法?

4

1 回答 1

1

在上传的文件上尝试一个简单的 fopen:

$image = fopen($_FILES['picture']['tmp_name']);

您不需要图像流,只需要 fopen 提供的文件流。

于 2015-03-09T09:55:36.137 回答