Индексиране на файлове и папки
Автор: renegat96
Разглеждах един урок и ми дойде идеята за такъв код .
Обаче ще кажа предварително че ще се ползва рекурсия.
За тези които не знаят, какво е рекурсия малко обяснение….
Туй чудо е викането на функция в самата нея
един прост пример
function recursiq($vikane=0) {
if ($vikane<10) recursiq($vikane+1);
}Сега ето кода
Сложил съм коментари кое какво прави
function read_dir($dir,/*параметър 1 - папката*/ $space = 0 /*параметър 2 - колко спейса да поставя преди файла или папката*/) {//създаваме функция
$open_dir = opendir($dir);//отваряме папката за четене на файловете
while($file = readdir($open_dir)) {//започваме да четем файловете
if ($file != "." && $file != "..") {//ако файла не е . или .. т.е. същата или преминаване в предишната папка започваме извеждането на файла
if (is_dir($dir . $file)) {//ако файла е папка извеждаме
for ($i=0;$i<$space;$i++) echo " ";//извеждаме интервали за да се отличават добре папките и подпапките
echo $dir . $file . "<br />";//извеждаме името на подпапката
read_dir($dir . $file . "/", $space+10);//започваме индексирането на подпапката
} else {//ако файла не е папка т.е. е файл
for ($i=0;$i<$space;$i++) echo " ";//извеждаме интервали за да се отличава файла
echo $dir . $file . "<br />";//извеждаме името на файла
}
}
//преминаваме нататък
}
}Нищо сложно нали ? Winking
Сега как се вика тая функция !?
Ами ето как
read_dir(„иметонапапката/“);
Забележете че в края има /
Няма да обяснявам за какво е но хората, които разбират кода ще се сетят .
Успех с променянето на кода и пригодяването му за нуждите Ви!
Дано съм Ви помогнал


