Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Erick Plant

separar texto .txt em blocos

Recommended Posts

Boa tarde,

 

Estou com um problema pra resolver é não consigo achar uma boa solução.

 

Tenho um arquivo .txt que possui vários contracheques. Exemplo:

 001655  NOME DO COLABORADOR             362,00 Função Assistente AdministratiLivr 0000 Folha. 1655
                                                         Admissão 06/03/2014             Dep     0 Dep SF    0
    001 Salário Base                     000:30                     362,00
 
    625 Vale Transporte 6%                                                         21,72
    903 INSS Folha                                                                 28,96
                                                                    362,00                ***************
 
    ____/____/______
 
 
    Base INSS: 362,00  (Aliq.: 8%)     Base FGTS:  362,00 (Valor:                       Base IRRF Folha:  33
 
   000602  NOME DO COLABORADOR             873,60 Função AUXILIAR SERV GERAIS   Livr 0000 Folha.  000
                                                         Admissão 01/05/2010             Dep     1 Dep SF    1
   Benefício a partir 05/07/2010 (220:00)
 
 
 
                                                                      0,00                ***************
    ____/____/______
 
 
    Base INSS: 0,00  (Aliq.: 0%)       Base FGTS:  0,00 (Valor: 0,00)
 
   001656   NOME DO COLABORADOR              362,00 Função Assistente AdministratiLivr 0000 Folha. 1656
                                                         Admissão 06/03/2014             Dep     0 Dep SF    0
    001 Salário Base                     000:30                     362,00
    625 Vale Transporte 6%                                                         21,72
 
    903 INSS Folha                                                                 28,96
                                                                    362,00                ***************
 
    ____/____/______
 
 
    Base INSS: 362,00  (Aliq.: 8%)     Base FGTS:  362,00 (Valor:                       Base IRRF Folha:  33
 
   001608   NOME DO COLABORADOR                  952,00 Função AGENTE DE PORTARIA     Livr 0000 Folha. 1608
                                                         Admissão 16/12/2013             Dep     2 Dep SF    2
    001 Salário Base                     000:30                     952,00
    599 Salário Família                  002,00                      49,32
    625 Vale Transporte 6%                                                         57,12
    903 INSS Folha                                                                 76,16
 
                                                                  1.001,32        1       ***************
 
    ____/____/______
 
    Base INSS: 952,00  (Aliq.: 8%)     Base FGTS:  952,00 (Valor:                       Base IRRF Folha:  51
 
Eu estou tentando separá-los para deixar individual. Exemplo:

   001608   NOME DO COLABORADOR                  952,00 Função AGENTE DE PORTARIA     Livr 0000 Folha. 1608
                                                         Admissão 16/12/2013             Dep     2 Dep SF    2
    001 Salário Base                     000:30                     952,00
    599 Salário Família                  002,00                      49,32
    625 Vale Transporte 6%                                                         57,12
    903 INSS Folha                                                                 76,16
 
                                                                  1.001,32        1       ***************
 
    ____/____/______
 
    Base INSS: 952,00  (Aliq.: 8%)     Base FGTS:  952,00 (Valor:                       Base IRRF Folha:  51
Alguém pode me ajudar a desenvolver a ideia. Pesquisei muito na net, mas não consigo desenvolver.
O que tenho desenvolvido é :
 

<?php
 
header('Content-Type: text/html; charset=ISO-8859-1');
 
$trimmed = file('lerTexto.txt',  FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
 
$ponteiro = fopen ("lerTexto.txt","r");
 
while (!feof ($ponteiro)) {
 
  $linha = fgets($ponteiro,4096);
 
  echo $linha."<br>";
}
fclose ($ponteiro);
 
?>
Como eu faria um explode separando cada um deles?
Obrigado!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lá em cima está o exemplo de como o .txt está. Contém todos os contraches

 

Quero separa-los assim e ir salvando separados tbm:

 

1º contracheque em um arquivo

 

001608   NOME DO COLABORADOR                  952,00 Função AGENTE DE PORTARIA     Livr 0000 Folha. 1608                                                         Admissão 16/12/2013             Dep     2 Dep SF    2    001 Salário Base                     000:30                     952,00    599 Salário Família                  002,00                      49,32    625 Vale Transporte 6%                                                         57,12    903 INSS Folha                                                                 76,16                                                                   1.001,32        1       ***************     ____/____/______     Base INSS: 952,00  (Aliq.: 8%)     Base FGTS:  952,00 (Valor:                       Base IRRF Folha:  51

2º contracheque outro arquivo

 

001608   NOME DO COLABORADOR                  952,00 Função AGENTE DE PORTARIA     Livr 0000 Folha. 1608                                                         Admissão 16/12/2013             Dep     2 Dep SF    2    001 Salário Base                     000:30                     952,00    599 Salário Família                  002,00                      49,32    625 Vale Transporte 6%                                                         57,12    903 INSS Folha                                                                 76,16                                                                   1.001,32        1       ***************     ____/____/______     Base INSS: 952,00  (Aliq.: 8%)     Base FGTS:  952,00 (Valor:                       Base IRRF Folha:  51

 

 

3º contracheque outro arquivo

 

 

001608   NOME DO COLABORADOR                  952,00 Função AGENTE DE PORTARIA     Livr 0000 Folha. 1608                                                         Admissão 16/12/2013             Dep     2 Dep SF    2    001 Salário Base                     000:30                     952,00    599 Salário Família                  002,00                      49,32    625 Vale Transporte 6%                                                         57,12    903 INSS Folha                                                                 76,16                                                                   1.001,32        1       ***************     ____/____/______     Base INSS: 952,00  (Aliq.: 8%)     Base FGTS:  952,00 (Valor:                       Base IRRF Folha:  51

Bom dia!!

 

Alguém pode me ajudar com alguma dica? :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.