PDA

Просмотр полной версии : rmdir


rubik-nerubik
03.10.2009, 20:48
Столкнулся с пролемой удаления папки, точнее папки с файлами

не помогает:
rmdir($papka);
т.к. там файлы, какие есть варианты? подскажите.

Sharky
03.10.2009, 20:51
http://ru.php.net/manual/en/function.delete.php
http://ru.php.net/manual/en/function.unlink.php

Spyder
03.10.2009, 20:56
system('rm -rf /papka')
;)

rubik-nerubik
03.10.2009, 20:59
так я не понял, унлинк удаляет тока файлы, а рм тока папки, может набросаешь код что и как.

Spyder
03.10.2009, 20:59
system('rm -rf /papka') - удаляет папку и файлы в ней =\

rubik-nerubik
03.10.2009, 21:00
мпхахха ну да) ок, сенкс.

[QwyZ]
03.10.2009, 21:16
ciklom udalyaesh vse faily sperva - potom pustuyu papku.zadacha to trivialnaya.

rubik-nerubik
04.10.2009, 16:36
system не помг, т.к. ограничен и включать его не намереваются. набросайте цикл, который удаляет плиз

Nightmarе
04.10.2009, 16:40
А я вот столкнулся с проблеммой, что unlink() не удаляет нужный мне файл, хотя в папке права на запись есть...
Но и в файле есть спец-символы @#$% и т.д... в имени файла.
как это влияет на работу, и что тут можно сделать?

rubik-nerubik
04.10.2009, 16:59
у меня такой проблемы нет, у меня тока цифры, точки, ну и текст может встретится и текст, максимум, нигтмаре, у тебя есть код?

Deathdreams
04.10.2009, 22:34
<?

$dir = "/home/nameless/data/www/smsman.net/"; //тут полный путь до диры

$dh = opendir($dir);
$i = '0';
while (false !== ($filename = readdir($dh))) {

if(trim($filename) == '.' || trim($filename) == '..'){ continie; }else{

$files[$i][name] = $filename;
$files[$i][type] = filetype($dir . $filename);

$i++;
}

}

for($i=0; $i <= count($files); $i++){

if( $files[$i][type] == 'file' ) { unlink($dir . files[$i][name]); }

if($i == count($files)){
unlink($dir);

}

}

print_r($files);
?>


На коленке.
P.S. не тестил.

krypt3r
05.10.2009, 07:08
http://ru2.php.net/rmdir
Интересно, кто-нибудь вообще читает раздел User Contributed Notes?