Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tellys Castro

O is_dir() Funciona No Win 32?

Recommended Posts

Salve rapazeada, to sumido do forum , mas muito trampo, sabe como é que é né!!!!

 

 

eu to num projeto aqui, em que eu preciso ler um diretorio e separar em strings os arquivos de subdiretorios, ou seja pegar uma pasta, ler o que tem dentro e separar em arquivos e subdiretorios!!!

 

a principio, muito facil!!! rs mas não sei porque não to conseguindo usar umas funçoes do php no mue windows aqui!!! alguém sabe se elas so funcionam em linux!!!???

 

segue o script pra estudo

 

 

function se_dir($d){$d=dir($d); echo "Manipulador: ".$d->handle."<br>\n";echo "Caminho: ".$d->path."<br>\n";while (false !== ($entry = $d->read())) {echo $entry.'<br>';}$d->close();}se_dir('c:/site/pasta_do_site/imagens');
Notem que ai funciona belezinha, o script le tudo dentro da pasta ai em cima!!!

 

ai vem o caso: tem duas funçoes do php que já dao se o objeto da string é dir -- is_dir() --ou file -- is_file() -- assim:

 

 

function se_dir($d){$d=dir($d); echo "Manipulador: ".$d->handle."<br>\n";echo "Caminho: ".$d->path."<br>\n";while (false !== ($entry = $d->read())) {if(is_dir($entry)) $entry = $entry_dir;else $entry = $entry_file;echo $entry_dir.'---dir<br>'; // coloquei o ----file so pra ver no script que é direcho $entry_file.'---file<br>'; // coloquei o ----file so pra ver no script que é file}$d->close();}se_dir('c:/site/pasta_do_site/imagens');
note que depois de adicionado o if pra separar os esquemas ai, não le , pelo menos aqui no meu wind

 

alguém vê algum erro ou sugere um outro esquema??

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta rsolvido galera, segue como ficou!!

 

 

function parse_dir($dir) {   if ($dh = @opendir($dir)) {	   while(($file = readdir($dh)) !== false) {		   if( !preg_match('/^\./s', $file) )  {			   if(is_dir($dir.'/'.$file)) {				   $newdir = $dir.$file.'/'; // <- tailing slash//				   chdir($newdir);				   echo "<b>IS DIR</b>: $newdir<br>";				   echo parse_dir($newdir);			   } else {				   echo $dir.'/'.$file."<br>";			   }		   }		   	   }	   chdir('..');   }}parse_dir('c:/site/multiland/imagens');

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.