Сохранение файлов в хранилище php метод

Как загрузить изображение в хранилище масштаба с помощью методов laravel или PHP?

1 ответ

Решение

Laravel использует FlySystem под капотом, чтобы абстрагировать хранилище файлов. Он предоставляет несколько драйверов из коробки, включая: S3, Rackspace, FTP и т. Д.

Если вы хотите поддерживать Scaleway, вам нужно написать собственный драйвер, о котором вы можете прочитать здесь.

Изменить: Как видно из документации Scaleway, он поддерживает клиенты CLI AWS, что означает, что добавить поддержку в FlySytem довольно просто. Я попробовал следующее, и это сработало.

Я добавил новый драйвер в config/filesystems.php следующее:

'scaleway' => [
    'driver' => 's3',
    'key' => '####',
    'secret' => '#####',
    'region' => 'nl-ams',
    'bucket' => 'test-bucket-name',
    'endpoint' => 'https://s3.nl-ams.scw.cloud',
]

и затем, чтобы использовать диск, я сделал следующее:

\Storage::disk('scaleway')->put('file.txt', 'Contents');

Мой файл был загружен.

РЕДАКТИРОВАТЬ: Я также сделал пиар, чтобы Scaleway был принят в список адаптеров для FlySystem Лиги. Это слилось. Вы можете увидеть это в прямом эфире здесь.

Другие вопросы по тегам