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

Ajuda - Ler Pasta E Ordenar Arquivos


Guest Diogo Dias

Pergunta

Guest Diogo Dias

Olá.

Eu gostaria de saber se tem como o PHP ler uma pasta e ordenar os arquivos dela (todos .txt) por ordem de última modificação. Se tem como fazer isso, gostaria de que me falassem como fazer, ou pelo menos me indicassem a função apropriada para isso.

Obrigado,

Diogo.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Guest - Calvin -

http://br2.php.net/function.opendir

aligma at gmail dot com

01-Nov-2005 01:54

The example given by oryan at zareste dot com may also be a "simpler faster way" of creating security holes in your code. The function listed above prevents risking execution of abitrary shell commands listed after a semicolon (;) in your directory name.

Example: $directory = '.;rm -rf /';

Result: List this directory, erase contents of filesystem.

oryan at zareste dot com

30-Oct-2005 11:33

There's a simpler faster way to get a whole directory if you're using PHP 4.  This function uses shell_exec - http://us3.php.net/shell_exec - and assumes you're using Unix/Linux and have shell access -

function dir($directory){

  $files=shell_exec("ls ".$directory);

  return explode("\n",$files);

}

This returns an array with all the files.

This way, you can use modifiers like -t, which shows files in order of modification time ($files=shell_exec("ls -t ".$directory);).  Enough tweaking and you can use it on Windows, though I can't say how since I don't have a Windows server to try it on

asharm4 at ilstu dot edu

07-Oct-2005 01:56

//this is a function I wrote to sort out the contents of the directory date wise for display.

$content_array = array();

//set current working directory

$dirname = "C:\temp";

//Load Directory Into Array

$handle=opendir($dirname);

$i=0;

while ($file = readdir($handle))

if ($file != "." && $file != "..")

{

      $content_array[$i][0] = $file;

      $content_array[$i][1] = date ("Y m d", filemtime($dirname."/".$file));

      $i++;

}

//close the directory handle

closedir($handle);

//these lines sort the contents of the directory by the date

  foreach($content_array as $res)

      $sortAux[] = $res[1];

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...