Jump to content
Fórum Script Brasil
  • 0

[DUVIDA] Remover linha


f0string

Question

Se possivel desde já agraceço, sou novo na area php, e preciso de um script..

Tenho um arquivo em .txt que possui varios emails aleatorios de varias pessoas.

Desta forma:

Nome: Exemplo Santos

Sexo: Masculino

E-mail: address: exemplo@hotmail.com

Queria um codigo em php qe movesse todas linha do txt qe conter "E-mail address: exemplo@hotmail.com"

Deixando somente

Nome: Exemplo Santos

Sexo: Masculino

Agradeço a todos .

---------------@edit

Achei esse script aqui mais ele remover linhas com palavras fixas sem variaçoes. No caso deu para remover apenas "E-mail: address: " os emails ficam então nem ajudou muito.

<?php

// Configure aqui

$linha = "E-mail:"; // conteudo da linha a ser retirada

$substituirpor = ""; //deixe em branco para simplesmente apagar a linha

$arquivo = "arquivo.txt";

$conteudo = file_get_contents($arquivo); // pega o conteúdo do arquivo e carrega-o em uma variável

$novoconteudo = str_replace($linha, $substituirpor, $conteudo); // cria um novo conteúdo

$gravar = fopen($arquivo, "w"); // abre o arquivo para escrita

fwrite($gravar, $novoconteudo); // grava o arquivo novamente, mas sem a linha

fclose($gravar); // fecha o arquivo

?>

Pois bem, observando aqui

Nome: Exemplo Santos

Sexo: Masculino

E-mail: address: exemplo@hotmail.com

Nome: Matheus Santos

Sexo: Masculino

E-mail: address: exemplsso@hotmail.com

A cada 5 a 5 linha (iniciando do primeiro email ) e a linha qe eu qria qe fosse removida.

Edited by f0string
Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

Desculpa minha tolerancia, mais para voce pode ate ser facil procurar/pesquisar,

Pra sua informaçao procurei tanto a ponto de chegar aqui, pois vi que aqui sim os usuarios estavao dando suporte..

Se fosse tão facil procurar e acha nesse tal "www.google.com" não teria chegado aqui.. Que eu saiba aqui e um forum que eu posso criar um tópico com duvida/ajuda .. se fosse pra procurar no google não existiria isso aqui ;s

Poderia me ajudar agora?

Edited by f0string
Link to comment
Share on other sites

  • 0

ai man,

to fazendo uma coisinha aqui pra ti beleza.. ;)

so o google mesmo e um pouco complicado, então vo te ajuda nessa, so vai te que espera um pouco hehe

Link to comment
Share on other sites

  • 0
ai man,

to fazendo uma coisinha aqui pra ti beleza.. ;)

so o google mesmo e um pouco complicado, então vo te ajuda nessa, so vai te que espera um pouco hehe

Sei nem como agradecer man, por um ponto achei qe ningem poderia ajudar.

Me esforcei o maximo na procura no google, no meu post #1 fiz alguns edits & fiz uma logica, tipo removendo uma linha a cada 5 linhas.

Edited by f0string
Link to comment
Share on other sites

  • 0

Pronto! :wacko:

aprendi bastante fazendo isso também hehe

o codigo ta ai, qualquer duvida posta logo embaixo

<?php

    $nome_arquivo = 'nome_arquivo.txt'; // Nome do arquivo a ser modificado
    $arquivo_recebe_email = 'recebe_emails.txt'; // Nome do arquivo que vai receber os emails para serem salvos...

    if(file_exists($nome_arquivo)){

        $salvar_conteudo = ''; // variavel que vai receber os campos do arquivo MENOS os emails...
        $emails = ''; // variavel que vai receber os emails

        $conteudo_arquivo = file_get_contents($nome_arquivo); // pega os dados do arquivo $nome_arquivo.txt
        $conteudo = explode('
', $conteudo_arquivo); // Esta parte do explode e um pouco complicada, voce tem que dar um enter para separar as '' do primeiro parametro, MAS você não pode deixar NENHUM espaco, nem para tabulacao do codigo apos a quebra de linha...
        // se não entendeu isso muito bem, faca um comment logo abaixo q eu explico melhor...

        foreach($conteudo as $indice => $valor){
            if(preg_match('/^E-mail address: /', $valor)){ // verifica se o valor no indice atual comeca exatamente com 'E-mail address: '
                $emails = $emails . $valor . '

'; // se deixar um enter(quebra de linha) o arquivo vai ficar mais organizado
            }else{
                $salvar_conteudo = $salvar_conteudo . $valor . '
';
            }
        }

        file_put_contents($nome_arquivo, $salvar_conteudo); // salva o conteudo sem emails no arquivo nome_arquivo.txt

        if(isset($arquivo_recebe_email)){
            file_put_contents($arquivo_recebe_email, $emails, FILE_APPEND); // salva os emails no arquivo recebe_emails.txt
            // o FILE_APPEND serve para não sobrescrever o conteudo que já existe no arquivo, isto e, não perder os emails q já existam nele.
        }else{
            file_put_contents($arquivo_recebe_email, $emails);
        }
    }

?>

Te aconselho a coloca isso num editor como o notepad++ para visualizar melhor o código.

Espero que goste :D

Link to comment
Share on other sites

  • 0
Pronto! :wacko:

aprendi bastante fazendo isso também hehe

o codigo ta ai, qualquer duvida posta logo embaixo

<?php

    $nome_arquivo = 'nome_arquivo.txt'; // Nome do arquivo a ser modificado
    $arquivo_recebe_email = 'recebe_emails.txt'; // Nome do arquivo que vai receber os emails para serem salvos...

    if(file_exists($nome_arquivo)){

        $salvar_conteudo = ''; // variavel que vai receber os campos do arquivo MENOS os emails...
        $emails = ''; // variavel que vai receber os emails

        $conteudo_arquivo = file_get_contents($nome_arquivo); // pega os dados do arquivo $nome_arquivo.txt
        $conteudo = explode('
', $conteudo_arquivo); // Esta parte do explode e um pouco complicada, voce tem que dar um enter para separar as '' do primeiro parametro, MAS você não pode deixar NENHUM espaco, nem para tabulacao do codigo apos a quebra de linha...
        // se não entendeu isso muito bem, faca um comment logo abaixo q eu explico melhor...

        foreach($conteudo as $indice => $valor){
            if(preg_match('/^E-mail address: /', $valor)){ // verifica se o valor no indice atual comeca exatamente com 'E-mail address: '
                $emails = $emails . $valor . '

'; // se deixar um enter(quebra de linha) o arquivo vai ficar mais organizado
            }else{
                $salvar_conteudo = $salvar_conteudo . $valor . '
';
            }
        }

        file_put_contents($nome_arquivo, $salvar_conteudo); // salva o conteudo sem emails no arquivo nome_arquivo.txt

        if(isset($arquivo_recebe_email)){
            file_put_contents($arquivo_recebe_email, $emails, FILE_APPEND); // salva os emails no arquivo recebe_emails.txt
            // o FILE_APPEND serve para não sobrescrever o conteudo que já existe no arquivo, isto e, não perder os emails q já existam nele.
        }else{
            file_put_contents($arquivo_recebe_email, $emails);
        }
    }

?>

Te aconselho a coloca isso num editor como o notepad++ para visualizar melhor o código.

Espero que goste :D

Obrigado mesmo mano, no momento estou testando, como o arquivo e muito grando acho qe vai demorar o pouquinho.. quando terminar edito aqui.

Link to comment
Share on other sites

  • 0

ai man,

vo saindo agr e amanha devo fica fora o dia inteiro, mas se tiver duvida poste ai que assim que de eu respondo

vlw ^_^

Link to comment
Share on other sites

  • 0
ai man,

vo saindo agr e amanha devo fica fora o dia inteiro, mas se tiver duvida poste ai que assim que de eu respondo

vlw ^_^

Tranquilo mano, tenha uma boa noite ai ! t+

Obg a voce ;] .. o script ainda esta rodando vamo ve no qe vai dar ;] vlw ae

----------------@edit

Pois bem execultei o codigo no meu terminal do linux

php nomedoarquivo.php

E esta execultando

No inicio li o script e vi esta part

$conteudo = explode('

', $conteudo_arquivo); // Esta parte do explode e um pouco complicada, voce tem que dar um enter para separar as '' do primeiro parametro, MAS você não pode deixar NENHUM espaco, nem para tabulacao do codigo apos a quebra de linha...

// se não entendeu isso muito bem, faca um comment logo abaixo q eu explico melhor...

Achei qe fosse normal.. vi agora novament e estou com duvida, como eu poderia apertar enter ;s ..

Edited by f0string
Link to comment
Share on other sites

  • 0
Achei qe fosse normal.. vi agora novament e estou com duvida, como eu poderia apertar enter ;s ..

hehe, desculpe se não me expressei muito bem, seria uma quebra de linha no proprio codigo

tipo

$conteudo = explode('
', $conteudo_arquivo);

depois de abrir as aspas para indicar qual caractere ira separar a string em arrays, voce da uma quebra de linha para indicar que o sinal e um novo paragrafo

dai o explode ira separar a string sempre que achar uma nova linha... so não deixe espacos para tabulacao do codigo, pois ele le qualquer coisa entre as aspas, inclusive os espacos, o que faria o codigo não funcionar do jeito desejado...

Link to comment
Share on other sites

  • 0
Desculpa minha tolerancia, mais para voce pode ate ser facil procurar/pesquisar,

Pra sua informaçao procurei tanto a ponto de chegar aqui, pois vi que aqui sim os usuarios estavao dando suporte..

Se fosse tão facil procurar e acha nesse tal "www.google.com" não teria chegado aqui.. Que eu saiba aqui e um forum que eu posso criar um tópico com duvida/ajuda .. se fosse pra procurar no google não existiria isso aqui ;s

Poderia me ajudar agora?

querido, não sei se seria facil ou dificil pra mim, pra te falar a verdade

você ve sim gente dando suporte aqui no forum, sem duvidas.. mas não o tipo de suporte que você deseja, que nem o rapaz ai fez pra vc (ele criou o script pra você de livre e espontanea vontade)...

isso é um forum, onde pessoas prestam ajudas às outras quando podem/conseguem (não tenha duvidas que eu faço isso)

o que me deixa puto/indignado, é que programadores que estao começando, nem se dão ao luxo de pensar.. querem tudo pronto, o "mamão picadinho".

posso ter sido estupido sim da forma como te respondi anteriormente ou como estou te respondendo agora, mas pense daqui a alguns anos, quando você se tornar um programador de verdade, vem nego pedindo pra criar um script que faça tal coisa, e nem quer pagar por isso!

não vou me alongar nessa discussão que não vai levar a lugar nenhum e vai fugir do propósito do tópico...

mas só uma dica, cara.. se você realmente quiser ser programador, se você realmente gosta de programar, etc... use a cabeça um pouco.. é complicado no começo, eu sei disso.. mas só assim você aprenderá e realmente se tornará um BOM programador (coisa dificil de se ver hj em dia).

Um abraço!

Link to comment
Share on other sites

  • 0
Desculpa minha tolerancia, mais para voce pode ate ser facil procurar/pesquisar,

Pra sua informaçao procurei tanto a ponto de chegar aqui, pois vi que aqui sim os usuarios estavao dando suporte..

Se fosse tão facil procurar e acha nesse tal "www.google.com" não teria chegado aqui.. Que eu saiba aqui e um forum que eu posso criar um tópico com duvida/ajuda .. se fosse pra procurar no google não existiria isso aqui ;s

Poderia me ajudar agora?

querido, não sei se seria facil ou dificil pra mim, pra te falar a verdade

você ve sim gente dando suporte aqui no forum, sem duvidas.. mas não o tipo de suporte que você deseja, que nem o rapaz ai fez pra vc (ele criou o script pra você de livre e espontanea vontade)...

isso é um forum, onde pessoas prestam ajudas às outras quando podem/conseguem (não tenha duvidas que eu faço isso)

o que me deixa puto/indignado, é que programadores que estao começando, nem se dão ao luxo de pensar.. querem tudo pronto, o "mamão picadinho".

posso ter sido estupido sim da forma como te respondi anteriormente ou como estou te respondendo agora, mas pense daqui a alguns anos, quando você se tornar um programador de verdade, vem nego pedindo pra criar um script que faça tal coisa, e nem quer pagar por isso!

não vou me alongar nessa discussão que não vai levar a lugar nenhum e vai fugir do propósito do tópico...

mas só uma dica, cara.. se você realmente quiser ser programador, se você realmente gosta de programar, etc... use a cabeça um pouco.. é complicado no começo, eu sei disso.. mas só assim você aprenderá e realmente se tornará um BOM programador (coisa dificil de se ver hj em dia).

Um abraço!

Pois bem, se não pode ajudar .. não venha postar aqui sem finalidades, se você não sabe, eu estou aprendendo a programar !

Com o script do membro assim "OK!" já aprendi algumas coisas.. então antes de postar interprete primeiro, não fique floodando sem saber de nada.

Link to comment
Share on other sites

  • 0
Desculpa minha tolerancia, mais para voce pode ate ser facil procurar/pesquisar,

Pra sua informaçao procurei tanto a ponto de chegar aqui, pois vi que aqui sim os usuarios estavao dando suporte..

Se fosse tão facil procurar e acha nesse tal "www.google.com" não teria chegado aqui.. Que eu saiba aqui e um forum que eu posso criar um tópico com duvida/ajuda .. se fosse pra procurar no google não existiria isso aqui ;s

Poderia me ajudar agora?

querido, não sei se seria facil ou dificil pra mim, pra te falar a verdade

você ve sim gente dando suporte aqui no forum, sem duvidas.. mas não o tipo de suporte que você deseja, que nem o rapaz ai fez pra vc (ele criou o script pra você de livre e espontanea vontade)...

isso é um forum, onde pessoas prestam ajudas às outras quando podem/conseguem (não tenha duvidas que eu faço isso)

o que me deixa puto/indignado, é que programadores que estao começando, nem se dão ao luxo de pensar.. querem tudo pronto, o "mamão picadinho".

posso ter sido estupido sim da forma como te respondi anteriormente ou como estou te respondendo agora, mas pense daqui a alguns anos, quando você se tornar um programador de verdade, vem nego pedindo pra criar um script que faça tal coisa, e nem quer pagar por isso!

não vou me alongar nessa discussão que não vai levar a lugar nenhum e vai fugir do propósito do tópico...

mas só uma dica, cara.. se você realmente quiser ser programador, se você realmente gosta de programar, etc... use a cabeça um pouco.. é complicado no começo, eu sei disso.. mas só assim você aprenderá e realmente se tornará um BOM programador (coisa dificil de se ver hj em dia).

Um abraço!

Pois bem, se não pode ajudar .. não venha postar aqui sem finalidades, se você não sabe, eu estou aprendendo a programar !

Com o script do membro assim "OK!" já aprendi algumas coisas.. então antes de postar interprete primeiro, não fique floodando sem saber de nada.

com certeza.. me desculpa, de verdade...

erro meu!

perdão, sr.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...