Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: узнать есть ли вложенные папки в директории?
 
 автор: Alexx   (30.01.2006 в 19:20)   письмо автору
 
 

Подскажите пжл.

   
 
 автор: Alexx   (30.01.2006 в 22:01)   письмо автору
 
   для: Alexx   (30.01.2006 в 19:20)
 

Переделал код листинга директорий

<?php 
  scan_dir
("."); 
  
////////////////////////////////////////////////////////// 
  // Рекурсивная функция - спускаемся вниз по каталогу 
  ////////////////////////////////////////////////////////// 
  
function scan_dir($dirname
  { 
    
// Открываем текущую директорию 
    
$dir opendir($dirname); 
    
// Читаем в цикле директорию 
    
while (($file readdir($dir)) !== false
    { 
      
// Если файл обрабатываем его содержимое 
      
if($file != "." && $file != ".."
      { 
        
// Если имеем дело с файлом - регистрируем его 
        
if(is_file($dirname."/".$file)) 
        { 
          echo 
$dirname."/".$file." - "
               
date("m.d.y",filemtime($dirname."/".$file))." - "
               
filesize($dirname."/".$file)."<br>"
        } 
        
// Если перед нами директория, вызываем рекурсивно 
        // функцию scan_dir 
        
if(is_dir($dirname."/".$file)) 
        { 
          echo 
$dirname."/".$file."<br>"
          
scan_dir($dirname."/".$file,$fd,$fb); 
        } 
      } 
    } 
    
// Закрываем директорию 
    
closedir($dir); 
  } 
?> 


Теперь названия могуть на разных языках. Появляется только дополнительный файл data.dat в нужной папке, объясните почему работает не правильно ?

<?
  
//Переменные
  
$root $_SERVER["DOCUMENT_ROOT"];
  
  
scan_dir(""$root"");
  
  function 
scan_dir($dir_name$root$tip)
  {
   if (
file_exists($root."/".$dir_name."/data.dat")) 
      {
       
$file file($root."/".$dir_name."/data.dat");  
       for (
$i $i count($file); $i++)
           {  
            
$stroka explode(":"$file[$i]);
            echo 
"<tr>\r\n<td>";
            echo 
"<a href =\"".$dir_name."/".trim($stroka[0])."\">".$tip.trim($stroka[1])."\r\n"
            echo 
"</td>\r\n</tr>\r\n";
            if (
file_exists($root."/".$dir_name."/".trim($stroka[0])."/data.dat")) {
                
$files file ($root."/".$dir_name."/".trim($stroka[0])."/data.dat"); 
                foreach (
$files as $in => $spisok )
                     {
                      
scan_dir($dir_name."/".$stroka[0], $root$tip."&nbsp;-");
                     }
                
           }
     }
    } 
}


?>

   
 
 автор: cheops   (31.01.2006 в 02:54)   письмо автору
 
   для: Alexx   (30.01.2006 в 19:20)
 

Хм... так вот же вы испльзуете функцию is_dir() - она как раз и позволяет выяснить что перед нами директория или нет.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования