+1

Script de importação de arquivo txt para o PHP

criado por Jorge Tadeu Sant Ana Silva em 24/10/2012 1:52pm
Boa tarde pessoal,

Segue uma pequena contribuição a comunidade.
Esta implementação tem por finalidade importar os dados de um arquivo txt para o PHP afim de manipulá-los livremente em nossas aplicações.

Para fins de exemplo fiz a importação de um arquivo contendo registros de nome, profissão e estado, sendo cada atributo separado por ";", sendo que o arquivo importado possui o seguinte layout:


Nome do arquivo: 'arquivo_de_importacao.txt'
Conteúdo do arquivo:
João da Silva; Especialista em Gestão de Projetos; São Paulo
Maria da Silva; Auxiliar contábil; Rio Grande do Norte


Basta copiar o conteúdo do arquivo, colar em um arquivo txt e salvá-lo com o nome 'arquivo_de_importacao.txt' no mesmo diretório do script de importação apresentado abaixo:


<?php

       
//indica o caminho do arquivo no servidor
        $arquivo
= 'arquivo_de_importacao.txt';

       
//cria um array que receberá os dados importados do arquivo txt
        $arquivoArr
= array();
       
       
//aqui é enviado para função fopen o endereço do arquivo e a instrução 'r' que indica 'somente leitura' e coloca o ponteiro no começo do arquivo
        $arq
= fopen($arquivo, 'r');
       
       
//variável armazena o total de linhas importadas
        $total_linhas_importadas
= 0;
       
       
//a função feof retorna true (verdadeiro) se o ponteiro estiver no fim do arquivo aberto
       
//a negação do retorno de feof indicada pelo caracter "!" do lado esquerdo da função faz com
       
//que o laço percorra todas as linhas do arquivo até fim do arquivo (eof - end of file)
       
while(!feof($arq)){
               
               
//retorna a linha do ponteiro do arquivo                        
                $conteudo
= fgets($arq);

               
//transforma a linha do ponteiro em uma matriz de string, cada uma como substring de string formada a partir do caracter ';'
                $linha
= explode(';', $conteudo);
               
               
//array recebe as substring contidas na matriz carregada na variável $linha
                $arquivoArr
[$total_linhas_importadas] = $linha;

               
//incremente a variável que armazena o total de linhas importadas
                $total_linhas_importadas
++;
       
}
?>      
       
       
<!-- Codificação HTML -->
       
<table border="1" style="width:100%;">
               
<thead>
                       
<tr>
                               
<th>Nome</th>
                               
<th>Profissão</th>
                               
<th>Estado</th>
                       
</tr>
               
</head>
               
               
<tbody>
                       
<?php foreach($arquivoArr as $linha): ?>
                               
<tr>
                                       
<?php foreach($linha as $campo): ?>
                                               
<td><?php echo $campo ?></td>
                                       
<?php endforeach; ?>
                               
</tr>
                       
<?php endforeach; ?>
               
</tbody>
       
</table>
       
<?php
       
//imprime a quantidade de linhas importadas
        echo
"<br/> Quantidade de linhas importadas = ".$total_linhas_importadas;
?>
Data Autor Changelog Download
24/10/2012 1:52pm Jorge Tadeu Sant Ana Silva - Versão 1

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)