Первый сайт на PHP



              

Файловый менеджер в работе - часть 4


$back=substr ($dirct, 0, strrpos($dirct, "/"));

Примечание:

Команда substr (строка, начало выделения, длина выделения) предназначена для выделения из строки ее части. Строка (или переменная, ее содержащая) должна быть указана в первом параметре команды. Второй параметр - позиция, с которой начинается выделяемая часть (вернее, число символов, которые необходимо пропустить до начала выделения части строки), а третий -количество выделяемых символов.

Команда strrpos (строка, символ) выдает номер позиции последнего появления указанного в ее втором параметре символа в строке, указанной в ее первом параметре. В вышеприведенной строчке она используется для определения длины вырезаемого из полного пути фрагмента — до последнего слэша.

и выведем ссылку на родительскую папку, попросту передав полученный путь к ней через переменную $fold:

echo ("<a href=index.рbр?:?о1с1=$bаск>Корневая папка</а><br>");

Все это делается, естественно, лишь в том случае, если текущая папка - не корневая.

}

Теперь можно и сканировать текущую папку. Получаем список файлов в ней (пояснения смотрите в - в описании сценария "Папкопотрошилка"):

$hdl=opendir($dirct); while ($file = readdir($hdl)) {

if (($file!="..")&&($file!=".")) { $a[]=$file;

} }

closedir($hdl);

В том случае, если файлы в папке есть...

if (sizeof($a)>0) {

отсортируем массив с их именами по алфавиту. К сожалению, при этом имена папок окажутся перемешанными с именами файлов, но делать специальную функцию сортировки пока не будем: asort($a);

Теперь надо вывести на страницу имена файлов и папок, причем каждое имя должно быть ссылкой на соответствующий файл или папку, а перед именем должен стоять checkbox для возможности выбора соответствующих файлов и папок для совершения над ними действий.

С каждым именем файла или папки...

foreach ($a as $k) { поступим следующим образом.

Примечание:

Оператор foreach считывает указанную в его параметрах переменную, в данном случае $к, все элементы массива, в данном случае $а, по очереди выполняя каждый раз указанный после него в фигурных скобках код, в котором может использоваться указанная переменная. Foreach будет работать только в РНР 4.0 и выше. Если вы можете использовать лишь РНРЗ, то вместо него можно использовать цикл for, указав в его параметрах величину массива $1.




Содержание  Назад  Вперед