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

  • Автор темы Автор темы Vehont
  • Дата начала Дата начала

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);
И тут возник вопрос! Как прочитать и вывести содержимое вложенных папок? Писать внутри проверки объекта на директорию такой же скрипт, уж больно громоздко! Да и неизвестно сколько там вобще будет папок!
Итак, кто может подсказать что делать?
 
Думаю, будет здорово, если не придётся постоянно лазить на сервер черех ФТП чтобы что то поменять, а менять прямо через веб-интерфейс
начнем с того, что ты заблуждаешься.
Всё ровно наоборот - через веб-интерфейс криво и неудобно, а через ФТП - прекрасно и приятно.

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

-~{}~ 30.01.05 21:51:

Искал, но находил только готовые скрипты, рылся в них, но понял мало чего. Слишеом громоздеие коды и в большинстве случаев никаких комментариев....
 
вызов функцией самой себя
так что ли
PHP:
function somefunc($f)
{
somefunc($f);
}

-~{}~ 30.01.05 21:57:

мне кажеться немного глюкнет, это же бесконечный цикл получается
 
А если внутри функции $f меняет значение и по условию выход из функции?
 
так ты составь условие рекурсии :)

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

:)
 
sakon, ты поступишь мудро, если не будешь развивать эту тему.
 
И всё же вернёмся к первоначальной цели. значит внутри скрипта нужно вызывать его же самого?
 
ба, так ты до сих пор не сделал?
откуда у тебя скрипт взялся?
гдеты тут в приведённых примерах увидел скрипт?
 
То, что у тебя написано на верху к FTP неимеет никокого отношения.

FTP
 
а тот, который в самом верху, тебе не нужен.
тебе нужен тот, который тебе в самом низу написали.
если ты не знаешь, что такое функция - изволь прочитать в документации.
 
В принципе знаю и неплохо, ну ладно, и на том спасибо всем!
 
Сверху