Редактор директорий

Vehont

Guest
Редактор директорий

Решил на днях написать скрипт для просмотра всего содержимого сервера. Думаю, будет здорово, если не придётся постоянно лазить на сервер черех ФТП чтобы что то поменять, а менять прямо через веб-интерфейс. Решил начать с простого. Подумал что для начала нужно прочитать какой то определённый каталог и вывести всё его содержимое на экран. Но ведь в каталоге могут быть вложенные папки! Тогда если файл является папкой(знаю что звучит глупо и неправильно), надо перед ним вывести соответсвующую надпись. Итак, начал я кодить и вышел вот такой скриптик:
PHP:
$dirname="testdir";
$dh=opendir($dirname);
while(gettype($file=readdir($dh))!='boolean')
{
if(is_dir("$dirname/$file"))
{
echo"DIRECTORY";
echo"$file<br>";
}
echo"file<br>";
}
closedir($dh);
И тут возник вопрос! Как прочитать и вывести содержимое вложенных папок? Писать внутри проверки объекта на директорию такой же скрипт, уж больно громоздко! Да и неизвестно сколько там вобще будет папок!
Итак, кто может подсказать что делать?
 

Фанат

oncle terrible
Команда форума
Думаю, будет здорово, если не придётся постоянно лазить на сервер черех ФТП чтобы что то поменять, а менять прямо через веб-интерфейс
начнем с того, что ты заблуждаешься.
Всё ровно наоборот - через веб-интерфейс криво и неудобно, а через ФТП - прекрасно и приятно.

однако просто для практики работы с диском можшь заниматься.
Тогда если файл является папкой(знаю что звучит глупо и неправильно)
здесь ты тоже заблуждаешься. Файл как раз и является папкой.
Итак, кто может подсказать что делать?
Я могу.
Надо пойти в онлайн документацию, м там, в комментариям к используемым функциям, выбрать из десятка готовый функций.
 

Vehont

Guest
Может я задам идиотский вопрос, но что такое рекурсия?

-~{}~ 30.01.05 21:51:

Искал, но находил только готовые скрипты, рылся в них, но понял мало чего. Слишеом громоздеие коды и в большинстве случаев никаких комментариев....
 

Vehont

Guest
вызов функцией самой себя
так что ли
PHP:
function somefunc($f)
{
somefunc($f);
}
-~{}~ 30.01.05 21:57:

мне кажеться немного глюкнет, это же бесконечный цикл получается
 

sakon

П..и.н..ок
А если внутри функции $f меняет значение и по условию выход из функции?
 

Ilya

Новичок
так ты составь условие рекурсии :)

function somefunc( $f ) {
if( $f ) somefunc( $f );
}

:)
 

Фанат

oncle terrible
Команда форума
sakon, ты поступишь мудро, если не будешь развивать эту тему.
 

Vehont

Guest
И всё же вернёмся к первоначальной цели. значит внутри скрипта нужно вызывать его же самого?
 

Фанат

oncle terrible
Команда форума
ба, так ты до сих пор не сделал?
откуда у тебя скрипт взялся?
гдеты тут в приведённых примерах увидел скрипт?
 

sakon

П..и.н..ок
То, что у тебя написано на верху к FTP неимеет никокого отношения.

FTP
 

Фанат

oncle terrible
Команда форума
а тот, который в самом верху, тебе не нужен.
тебе нужен тот, который тебе в самом низу написали.
если ты не знаешь, что такое функция - изволь прочитать в документации.
 

Vehont

Guest
В принципе знаю и неплохо, ну ладно, и на том спасибо всем!
 
Сверху