Здравствуйте
Хочу для опыта написать скрипт который выведет все файлы во всех директориях, любой вложенности.
Работает рекурсивно.
Написал, работает нормально. НО ! Не читает папки дальше второго уровня вложенности.
Т.е. если есть такая папка:
cars
...bmw
...mersedes
...lada
То всё что в cars - скрипт считает файлами, т.е. is_dir - возвращает false.
Помогите понять что не так.
Возможно есть какая нибудь настройка апача или php.ini ?
Вроде бы с точки зрения кода всё верно.
Тестирую на денвере, пробовал заливать на хост - и так и там, дальше второго уровня не распечатывает =(
PHP:
скопировать код в буфер обмена
<?PHP function dirs($dir, $tab) { if( $name == "." or $name == ".." ) continue; echo "<b>".$tab."[$name]</b><br>"; dirs($dir."/$name", $tab. "-"); } else echo "$tab$name<br>"; } } dirs( ".", "" ); ?>
(Добавление)
Я нашел ошибку!
Если кому интересно - ошибка была в условии.
Скрипт не верно отличал папку от файла, потому что условие в 9 строке было не верным.
Нужно так:
if( is_dir( $dir."/".$name ) ) {(Отредактировано автором: 25 Мая, 2013 - 12:26:58)
|