Importação de CSV com Laravel

Índice
Quando construímos aplicativos que devem lidar com uma grande quantidade de dados, às vezes não é suficiente ter um formulário de upload de informações, há momentos em que precisamos mover um grande volume de dados de forma automatizada.
Para isso temos muitas opções, porém a opção mais simples é importar um arquivo csv, este tipo de arquivos nos permite organizar os dados separados por vírgulas ou ponto e vírgula, com isso em um arquivo de texto simples podemos armazenar uma grande quantidade de dados, a vantagem é que podemos gerar dados em programas como Excel para ser posteriormente transferido para nosso aplicativo.
Gere um arquivo csv É algo bem simples, basta abrir um editor de texto, colocar várias linhas com os dados separados por vírgulas, o importante que devemos cuidar aqui é que mantemos a mesma quantidade de valores por linha, assim teremos mais facilidade ao processar o arquivo, vamos ver um exemplo:

Temos uma lista de personagens e filmes de ficção científica, com isso podemos ter uma ideia do que CSV e se já o tivermos, podemos ter um conjunto de dados para os testes. Podemos salvar isso em um arquivo .csv para poder usá-lo mais tarde.
Para fazer isso importar Devemos seguir alguns pequenos passos, estes podem ser adaptados à realidade da nossa aplicação, são bastante simples de seguir:
1- Devemos criar uma migração para gerar a tabela na qual vamos importar os dados, neste caso seguindo o tema dos programas de ficção científica, vamos executar o seguinte comando artesão:
php artisan migrate: make create_scifi_table

2- No método pra cima () A partir de nosso arquivo de migração gerado, colocaremos os atributos de nossa tabela, isso deve ser algo semelhante ao seguinte:

3- Assim que tivermos nossa migração pronta e executada, devemos criar o modelo que herda de Eloquente para poder acessar as funcionalidades do banco de dados:
 class Scifi extends Eloquent {protected $ table = 'scifi'; } 

4- A seguir criamos a vista em uma rota, com isso podemos processar nossos dados, para isso no arquivo routes.php vamos criar uma rota que obtenha do método get o que ele precisa, aí abriremos o arquivo em modo de leitura, percorreremos seu conteúdo e faremos um foreach () do conteúdo, portanto para cada linha obteremos as colunas e podemos armazená-las em nosso modelo, finalmente salvamos e depois consultamos todos os dados da tabela. Vamos ver na imagem a seguir como essa rota se parece:

Com isso teremos importado com sucesso o arquivo CSV Em nosso banco de dados, é importante que mantenhamos uma estrutura uniforme, caso contrário teremos que realizar várias validações incorporando elementos de maior complexidade que tornarão a estrutura de nossa aplicação pesada e difícil de manter.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave