Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Função file() para exibição de arquivos em PHP
Linux user
Publicado por Keylly Eyglys em 09/07/2007

Login: eyglys, 7729 pontos
[ Hits: 4714 ]

Função file() para exibição de arquivos em PHP

Muitos já se depararam com o problema de ter que imprimir um código em uma página HTML e ter que imprimir linha a linha e colocar a numeração de cada linha.

A maneira mais utilizada é com as funções fopen, fread, fclose e explode:

<?
$fp = fopen("source.php","r");
$conteudo = fread($fp,filesize("source.php"));
fclose($fp);

$arr = explode("\n",$conteudo);
foreach ($arr as $NLine => $line) {
echo ($NLine + 1)." ".$line;
}
?>

Lógico que esse "echo" pode ter qualquer outra coisa, pode estar dentro de uma tabela (para deixar mais organizado).

Mas o objetivo é mostrar como percorrer todas as linhas do arquivo sem precisar fazer tudo isso.

A maneira mais simples é utilizando a função file().

<?
$arr = file("source.php");
foreach ($arr as $NLine => $line) {
echo ($NLine + 1)." ".$line;
}
?>

A função file retorna um array com todas as linhas do arquivo (primeira linha com índice zero, segunda com índice 1, etc).


Outras dicas deste autor
Nenhuma dica encontrada.

Leitura recomendada
   Dica Linux recomendada Compatibilidade de acentos em PHP + Flash
   Dica Linux recomendada Mostrar mensagem aleatória (arquivo texto)
   Dica Linux recomendada Orion - Extração e conversão de dados de arquivos texto e CSV
   Dica Linux recomendada PHP5 + PDFliblite + Ubuntu 9.04
   Dica Linux recomendada Corrigindo common.php do phpbb3

Comentários
[1] Comentário enviado por alexandrecorrea em 09/07/2007 - 04:51h:

acho que a função show_source() tambem seria mais pratica :)

<?
show_source("arquivo.txt");
?>

[2] Comentário enviado por eyglys em 09/07/2007 - 21:46h:

o show_source é melhor quando não deseja-se formatar (de acordo com as necessidades do layout) o código fonte, pois ele já vem formatado.

Mas em sites que o layout não seja tão importante, a função que vc apresentou resolve o problema todo com uma só linha, para os outros casos (uma formatação mais personalizada) teria que usar o file ou o fopen.

[3] Comentário enviado por mtutucv em 07/07/2008 - 15:31h:

Muito Bom esta dica estava a precisar disso e penso que ajudara muitas pessoas

[4] Comentário enviado por eduardo.azevedo em 31/07/2008 - 12:52h:

Não tenho como contribuir, mas tenho uma pergunta em relação a leitura de arquivos.
Sou iniciante, em meus testes ja consegui fazer a leitura de um arquivo e apresenta-lo em uma pagina, contudo eu gostaria de manipular a informação que quero que apareçe.
tipo.. quero que apereça em um determinado "form" uma posição e tamanho deste arquivo.
Você ja fez isto alguma vez ou sabe de alguem para me ajudar?

Um abraço.

[5] Comentário enviado por eyglys em 31/07/2008 - 23:03h:

Não entendi o que quiz dizer com "Posição" do arquivo.
Para obter o tamanho do arquivo a função filesize irá resolver o seu problema.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.