Ir para conteúdo
Fórum Script Brasil
  • 0

Arquivo


SirSmart

Pergunta

Galera gostaria de fazer o seguinte:

Fiz um script que lê caracter por caracter e joga dentro de um array, quando ele encontrar um sinal de | que é a separação dos campos ele passa para o proxima indice do array somando 1.

Só que não está colocando nada no array e eu não estou entendendo o porque....

Eis o codigo:

$arquivo = fopen("teste.txt","r");

   $i=0;
   while ($buffer = fgetc($arquivo)) {
  if($buffer != "|"){
  	$array[$i] = $buffer;
  }
  if($buffer == "|"){
  	$i++;
  }
   }

Se alguém puder me ajudar eu agradeço

Obrigado

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Acredito que não de,

desta forma, sempre vai sobrepor o valor atual pelo anterior.

nunca usei mas se mudar o

$array[$i] = $buffer;

para

$array[$i] .= $buffer;

vai contactenando, mas nem imagino o que isto faria em termos de memoria, o ideal é usar a função mesmo.

se quiser tentar para ver que resultado aparece:

arquivo = fopen("teste.txt","r");

$i=0;

$array[];

while ($buffer = fgetc($arquivo)) {

if($buffer != "|"){

$array[$i] .= $buffer;

}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...