Novedades en Laravel 5: Almacenamiento en la nube

Almacena ficheros estáticos en diferentes servicios cloud gracias a Flysystem, ahora parte de Laravel 5.

Otra gran funcionalidad de Laravel 5 es la inclusión de Flysystem, una librería creada por Frank de Jonge's que abstrae el sistema de ficheros para poder intercambiar fácilmente entre local y remoto.

Flysystem cuenta con varios adaptadores por defecto para que podamos utilizar, como Amazon Web Services S3, Azure, Dropbox o Rackspace Cloud Files entre otros. Aunque aquí no acaba la cosa puesto que podemos crear nuevos adaptadores que se ajusten a nuestras necesidades.

La configuración es muy sencilla, solo tenemos que editar el fichero config/filesystems.php y editar nuestros "discos". Para utilizar estos adaptadores, también tenemos que incorporar mediante composer el paquete necesario para cada adaptador. Algunos de ejemplo:

Cloud Paquete
Azure league/flysystem-azure
AWS S3 league/flysystem-aws-s3-v3
Dropbox league/flysystem-dropbox
Rackspace league/flysystem-rackspace
SFTP league/flysystem-sftp

Después utilizaremos los métodos internos de Laravel para manipular ficheros independientemente de si estamos trabajando con ficheros locales o en la nube. Ejemplo:

$contents = Storage::get('file.jpg');

Storage::put('copy.jpg', $contents);

Storage::delete('file.jpg');

Sin duda estamos ante una de las funcionalidades más prácticas e interesantes de Laravel 5. Recuerda consultar la documentación de la clase Filesystem para más información.

Compartir en

Facebook Twitter Google+ LinkedIn