Pular para conteúdo

Exercícios: Aula 13 - Upload de Arquivos e Storage 📂

🟢 Básico

  1. Link Simbólico: Qual o comando exato utilizado para criar o link simbólico entre a pasta storage/app/public e a pasta public/storage?
  2. Helper: Como você gera uma URL pública para um arquivo que foi salvo no disco public usando o helper asset?

🟡 Intermediário

  1. Validação: Escreva as regras de validação para um campo de upload que: deve ser obrigatório, deve ser uma imagem (jpg ou png) e não pode exceder 500 KB.
  2. Armazenamento: Qual a diferença entre os métodos store() e storeAs()? Em qual cenário você usaria o storeAs()?

🔴 Desafio

5. Multi-Disk e Cleanup: Implemente um pequeno código em PHP que salve um arquivo no disco local e, logo em seguida, mova-o para um disco fictício chamado s3. O código deve garantir que o arquivo original seja deletado do disco local após o upload para a nuvem.

📚 Gabarito e Soluções Comentadas

Gabarito Explicado ### Questão 1: Link Simbólico **Resolução e Implementação:**
// Estrutura de implementação recomendada para Link Simbólico
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Upload de Arquivos e Storage**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 2: Helper **Resposta Comentada:** - **Fundamentação:** No contexto de **Upload de Arquivos e Storage**, o conceito abordado (Helper) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 3: Validação **Resolução e Implementação:**
// Estrutura de implementação recomendada para Validação
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Upload de Arquivos e Storage**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 4: Armazenamento **Resolução e Implementação:**
// Estrutura de implementação recomendada para Armazenamento
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Upload de Arquivos e Storage**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 5: Multi-Disk e Cleanup **Resolução e Implementação:**
// Estrutura de implementação recomendada para Multi-Disk e Cleanup
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Upload de Arquivos e Storage**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda.