Meus sites


Sites relevantes


Contato

Email: devanon.kyosha@gmail.com

Try scrolling the rest of the page to see this option in action.

Sejam bem vindos

Fabrício Web Home Page

Desenvolvimento PHP Laravel, Manutenção em sites PHP, Arquitetura de serviços Web, Geração de endpoints REST API e Tutoriais.

Sejam bem vindos à página Fabrício Web. Eu sou o Fabrício Dias.
Passarei aqui uma parte significativa de minha experiência. Acompanhe minhas publicações. Vou publicar amenidades nerds também. O site está em desenvolvimento, e vou colocar melhorias ainda. E com certeza vou adicionar interação com o leitor em breve.

Fabrício Dias de Oliveira

Laravel - Upload de de imagens com miniaturas

Há inúmeras aplicações onde o upload de imagens se faz necessário. Poderíamos usar o recurso de configurar o tamanho da imagem do formulário, mas ainda sim o programa terá que baixar toda a imagem para montar a miniatura. Nesse tutorial, vou mostrar como fazer o upload enquando se monta a miniatura da imagem.

Entendendo o upload

O form:

<!-- O tipo de encoding de dados, enctype, DEVE ser especificado abaixo -->
<form enctype="multipart/form-data" action="__URL__" method="POST">
    <!-- MAX_FILE_SIZE deve preceder o campo input -->
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
    <!-- O Nome do elemento input determina o nome da array $_FILES -->
    Enviar esse arquivo:
    <input name="userfile" type="file" />
    <input type="submit" value="Enviar arquivo" />
</form>

O código Laravel:

$file = $request->file(file);
$name = $file->getClientOriginalName();
$extension = $file->getClientOriginalExtension();
$file->move(‘pasta’, $name);

A pasta é uma pasta qualquer dentro de public.
Fazendo o upload das imagens
Se usa a API Intervention Images.

composer require intervention/image

Para configurá-la, editamos o arquivo config/app.php
Adicionamos no array $provider:

Intervention\Image\ImageServiceProvider::class

E no array $aliases:

'Image' => Intervention\Image\Facades\Image::class,

Nas cláusulas use do código, adicionamos a API;

use Intervention\Image\Facades\Image;

E eis um código de exemplo:

$file = $request->file(‘foto’);
$extension = $file->getClientOriginalExtension();
$name = $file->getClientOriginalName();
$file->move('imagens', $file)->getClientOriginalName());
$img = Image::make('imagens/'.$file->getClientOriginalName());
$img->resize(100, null, function ($constraint) {
    $constraint->aspectRatio();
})->save('imagens/'.$time);

Fabrício Dias de Oliveira

Procurar artigos