Я загрузил приложение в Heroku и обнаружил, что не могу загрузить в него файлы. Затем я начал использовать Dropbox в качестве опции хранения, и я сделал несколько тестов, ссылки отправки и получения, и все работало нормально.
Теперь проблема заключается в использовании метода uploadFile () в DropboxAdapter. Он принимает ресурс в качестве файла, и я не работал хорошо. Я сделал несколько тестов, и до сих пор нет способа. Вот что я делаю, если кто-нибудь может мне указать решение или направление к этой проблеме, пожалуйста. 🙂
Вот мой фактический код для пользователя обновления (Обновите изображение пользователя и получите ссылку на файл).
$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 ()) $ образ, который я пытался создать. (Что является предложением из этих двух ссылок: Неправильная загрузка временного файла PHP Ресурс Image, Загрузка Dropbox в скрипте.
http://i.imgur.com/pSv6l1k.png
Любая идея?
Попробуйте просто открыть загруженный файл:
$image = fopen($_FILES['picture']['tmp_name']);
Вам нужен не поток изображений, а только поток файлов, который предоставляет fopen.
Других решений пока нет …