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

Форум PHP

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

 

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

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

тема: рекурсивная функция обхода каталогов
 
 автор: Jackson   (13.03.2012 в 21:35)   письмо автору
 
 

не могу до конца разобраться с обходом в глубину директорий

function search_in_dir ($dir_name){
    $dir=opendir($dir_name);
    while (false !== ($cons = readdir($dir))){
            if($cons != "." && $cons != ".."){
            if (is_file($cons)) {
                if (preg_match(fix_query($_POST["s"]),$cons)) $mas_file[]=$cons;
            }
            elseif (is_dir($cons)) { echo "вложенная категория $cons<br>";
                search_in_dir($dir_name."/".$cons);
            }
        }
    }
    if (!empty($mas_file)) {
        foreach ($mas_file as $val) echo "$val<br>";
    }
    else echo "Такие файлы не найдены<br>";
    closedir($dir);
}


скрипт не заходит далее первого уровня вложения

  Ответить  
 
 автор: Jackson   (13.03.2012 в 23:08)   письмо автору
 
   для: Jackson   (13.03.2012 в 21:35)
 

разобрался - в функции is_file is_dir надо добавить к имени файла (ну или вложенной папки) имя родительской папки.
Кто может объяснить почему без него не работает? ведь если просто оставить проверку is_file/is_dir - верно определяется тип содержимого

  Ответить  
Rambler's Top100
вверх

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