Описание тега laravel-filesystem
Laravel обеспечивает прекрасную абстракцию файловой системы благодаря PHP-пакету Flysystem от Фрэнка де Йонге. Laravel Flysystem интеграция обеспечивает простой в использовании драйверов для работы с локальными файловыми системами, Amazon S3 и Rackspace Cloud Storage. Более того, переключаться между этими вариантами хранения невероятно просто, поскольку API остается одинаковым для каждой системы!
Конфигурация
Файл конфигурации файловой системы находится по адресу config/filesystems.php
. В этом файле вы можете настроить все свои "диски". Каждый диск представляет собой определенный драйвер хранилища и место хранения. Примеры конфигураций для каждого поддерживаемого драйвера включены в файл конфигурации. Итак, просто измените конфигурацию, чтобы отразить ваши предпочтения в хранилище и учетные данные!
Перед использованием драйверов S3 или Rackspace вам необходимо установить соответствующий пакет через Composer:
Amazon S3: league/flysystem-aws-s3-v2 ~1.0
Место для стойки: league/flysystem-rackspace ~1.0
Конечно, вы можете настроить столько дисков, сколько захотите, и даже можете иметь несколько дисков, использующих один и тот же драйвер.
При использовании local
драйвер, обратите внимание, что все файловые операции относятся к root
каталог, определенный в вашем файле конфигурации. По умолчанию это значение установлено наstorage/app
каталог. Следовательно, следующий метод сохранит файл вstorage/app/file.txt
:
Storage::disk('local')->put('file.txt', 'Contents');