Работа с папками в PHP

Категория: PHP Комментариев: 7

В интерпретаторе PHP имеются встроенные функции для управления файлами и папками, а именно: создание папок, чтение, и удаление папок. Об этих функциях сейчас и пойдет речь.

Создание папок
Для создания папок в PHP используется функция mkdir (dir_name), возвращающая true в случае успешного создания папки, и false в случае ошибки.
По умолчанию функции передается только имя новой папки. Однако можно указать и такие дополнительные параметры, как права доступа для новой папки и рекурсивное создание подпапок (если нужно создать ряд вложенных папок):

// создание папки с именем dir:
mkdir("dir");

// создание папки с именем dir и правами доступа 755:
mkdir("dir", 0755);
// создание вложенного списка папок с правами доступа 755:
mkdir("dir/subdir/subdir2", 0755,true);

Чтение папок
Для чтения содержимого папки используются функции opendir () и readdir (). Первая функция создает дескриптор папки, а вторая читает список файлов в папке:

$dir = opendir("dir") or die("Не могу открыть папку");
while ($file = readdir($dir)){
 if ($file != "." && $file != "..") {
 echo $file . "<br>";
 }
}

Удаление папок
Для удаления папок используется функция rmdir (), возвращающая true в случае удачного удаления папки, и false в случае ошибки:

rmdir("dir") or die("Не могу удалить папку");

Также для этих целей можно воспользоваться и системными функциями, вызываемыми через exec ():

<?php
function removeDir( $dir ) {
 if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') {
 exec( "rd /s $dir" );
 } else {
 exec( "rm -rf $dir" )
 }
}
?>

Остались вопросы? Задавайте!

Автор: Кто-то   @   8 марта 2009 Комментариев: 7
Метки :

Поблагодарить автора

Webmoney Z163628999150, R617151845974

Комментариев: 7

Комментарии
марта 12, 2010
13:16
#1 xqx :

Как указать php что бы при создании папки mkdir ('test') он по умолчанию ей ставил права 775?

Автор марта 14, 2010
21:20

Так:

mkdir («test», 0755);

марта 22, 2010
18:55
#3 yadino :

В последнем примере 06 строка- ошибка, нет точки с запятой в конце строки. ;)

как-то у вас странно, сперва

ПоблагодарИТЬ автора а потом тут же- Дай. мб тогда дать?)) а не дай. И кстати по улице идешь, чувак походит и говорит дай рубль. не дам!

Не проходя проверку, почему дам-не дам. Просто сразу не дам. Мозг так привык. Так что тут у вас подход неверный :)

ну собственно это просто отвлечение. Разберите, пожалуйста, последний пример подробно. Особенно касательно -rf. Что это, как этим пользоваться. спасибо

мая 5, 2010
13:04
#4 Andre :

Полезная инфа, но хочется дальше- комнанды на управление и редактирование файлами в папках

июля 15, 2010
17:42
#5 sympler :

как прочитать в папке файлы начинающиеся с буквы R

Автор июля 15, 2010
22:17

в цикл чтения файлов в каталоге добавить обработчик того, что имя файла начинается на R:

if (($file[0] == «R») || ($file[0] == «r»))

echo $file;

Апр 21, 2011
16:06
#7 Игорь :

Спасибо, работает. ТО что искал ;)

оставить комментарий

Предыдущая запись
«
Следующая запись
»