Fernando Sena - Programação & Tecnologia Digital
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Procurar
 
 

Resultados por:
 


Rechercher Pesquisa avançada

Palavras-chaves

Últimos assuntos
» Wii ganha versão de 'Street Fighter II' para Mega Drive com modo on-line
Lendo diretórios em PHP Icon_minitime1Qua 16 Nov - 16:14 por fernandosena

» Segurança e redes sem fio
Lendo diretórios em PHP Icon_minitime1Qua 16 Nov - 16:11 por fernandosena

» Nokia lançará tablet com Windows 8 em junho de 2012, diz executivo
Lendo diretórios em PHP Icon_minitime1Qua 16 Nov - 16:05 por fernandosena

» Empresa registra aumento de 472% no número de vírus para Android
Lendo diretórios em PHP Icon_minitime1Qua 16 Nov - 16:03 por fernandosena

» YouTube investe US$ 100 milhões em vídeos
Lendo diretórios em PHP Icon_minitime1Sex 7 Out - 8:34 por fernandosena

» Todos os títulos futuros da Microsoft devem trazer suporte para o Kinect
Lendo diretórios em PHP Icon_minitime1Sex 7 Out - 8:25 por fernandosena

» Resident Evil 5 - PC
Lendo diretórios em PHP Icon_minitime1Sex 7 Out - 8:22 por fernandosena

» Novo trailer de Assassin’s Creed Revelations é lançado
Lendo diretórios em PHP Icon_minitime1Sex 7 Out - 8:12 por fernandosena

» Biostar apresenta nova placa-mãe que permite acesso remoto via smartphones
Lendo diretórios em PHP Icon_minitime1Sex 7 Out - 8:08 por fernandosena

junho 2024
SegTerQuaQuiSexSábDom
     12
3456789
10111213141516
17181920212223
24252627282930

Calendário Calendário

Blog
Fórum grátis


Lendo diretórios em PHP

Ir para baixo

Lendo diretórios em PHP Empty Lendo diretórios em PHP

Mensagem por fernandosena Ter 6 Set - 14:08

O código é simples, segue:

opendir (MEUDIR, "/home/LOGIN/www/meudir");
@pegoodir = readdir(MEUDIR);
closedir (MEUDIR);

Explicando o código:
-
opendir (MEUDIR, "/home/LOGIN/www/meudir");
- Este código abre o diretório especificado
-
@pegoodir = readdir(MEUDIR);
- Neste, coloco todos os arquivos do diretório em um vetor (o @pegoodir é um vetor).
-
closedir (MEUDIR);
- Encerro a leitura do diretório
1. Lendo os arquivos do diretório e imprimindo seus dados
Irei utilizar o comando
foreach
para pegar os nomes dos arquivos no vetor e abrí-los.
A seguir o código e a explicação da utilização parte a parte.

#!/usr/bin/perl
print "Content-type: text/html"; # Digo ao script o conteúdo do documento
# abro o diretório
opendir (MEUDIR, "/home/LOGIN/www/meudir");
@pegoodir = readdir(MEUDIR);
closedir (MEUDIR);
# já peguei todos os dados e armazenei no vetor, fecho o diretório

foreach (@pegoodir) {
$dados = $_; # como só existe uma coluna no vetor, utilizei o $_ para pegar esta coluna.

if ($dados eq ".") { next; } #prossigo se o nome do arquivo for só . (ver explicação abaixo)
if ($dados eq "..") { next; } #prossigo se o nome do arquivo for só ..

open (MEUFILE, "/home/LOGIN/www/meudir/$dados");
@minhas_linhas = <MEUFILE>;
close (MEUFILE);

print "<b>Arquivo $dados</b>: @minhas_linhas

"; # imprimo os arquivos do diretório.

} # fecho o foreach

Agora explicando o comando:

if ($dados eq ".") { next; } #prossigo se o nome do arquivo for só .
if ($dados eq "..") { next; } #prossigo se o nome do arquivo for só ..

Um diretório é formado pela seguinte sequencia:

. # este significa a volta a pasta raiz
.. # este volta para a pasta anterior
a # pasta de nome a
b # pasta de nome b
c # pasta de nome c
a.EXT # arquivo a.ext
b.EXT # arquivo b.ext
c.EXT # arquivo c.ext

Utilizei o código porque, sem ele, o script intenderá o dado "." e ".." como arquivos e irá abrí-los, demorando na execução do sistema.

Inserindo este comando
next;
fernandosena
fernandosena
Admin

Mensagens : 155
Data de inscrição : 01/09/2011
Idade : 59
Localização : Salvador-BA

http://www.wix.com/fernandopadre/padre

Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos