Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Удаление фаилов по маске из определенной папки


Автор: V13 3.3.2008, 16:38
Здравстуйте!

Вот столкнулся с проблемой, как удалить фаил по маске из определенной дериктории, много чего перепробовал, но скрипт либо не находит нужные мне фаилы, либо вообще не работает. Вот последний не рабочий вариант
Код

foreach (glob("*.gz") as $filename) {
unlink($_FILES['/backup/']['$filename']);
}
 

Заранее благодарен smile .

Автор: awers 3.3.2008, 16:53
как крайний вариант - перелистай директорию (функции пхп для работы с файлами) и по preg_math удаляй нужные

Автор: GeneralElectric 3.3.2008, 17:13
V13, 
выполни, пожалуйста, код
Код

error_reporting(E_ALL);
$arr=array("t.php" => 1);
$filename="t.php";
echo $arr['$filename'];
echo '$filename';


Наличие, кстати, в этом коде массива $_FILES повергает меня в смятение.

Да, чтобы было понятно. Ты столкнулся не с проблемой, как удалить файл, а с проблемой, как работать с массивами и строками в РНР.

Автор: GeneralElectric 3.3.2008, 17:23
У меня в точности такая же. Сам удивляюсь, как здесь детали разглядел.
Другое дело, концепция, вроде, нормальная.
Ну, кроме странного $_FILES.
И предположения, что архивные файлы лежат в одном каталоге со скриптом.

Автор: V13 3.3.2008, 17:31
Архивные фаилы и скрипт находятся в разных каталогах. Я поэтому и подумал, что так должно быть
Код

unlink($_FILES['/каталог/']['$маска файла']);


Добавлено @ 17:41
Цитата(GeneralElectric @ 3.3.2008,  17:13)
V13, 
выполни, пожалуйста, код
Код

error_reporting(E_ALL);
$arr=array("t.php" => 1);
$filename="t.php";
echo $arr['$filename'];
echo '$filename';


Наличие, кстати, в этом коде массива $_FILES повергает меня в смятение.

Да, чтобы было понятно. Ты столкнулся не с проблемой, как удалить файл, а с проблемой, как работать с массивами и строками в РНР.

Спасибо за совет но к сожалению не работает. Подскажите как можно просто удаить фаил по маске или совсем очистить каталог, скрипт и фаил который нужно удалить лежат в разных каталогах smile  

Автор: GeneralElectric 3.3.2008, 17:42
код glob("*.gz") читает из той же директории, что и скрипт.
а $_FILES - это, в твоем понимании, некий механизм доступа к файлами. интересно, интересно...

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

Автор: V13 3.3.2008, 18:23
Родина ждет героев... smile 

 smile 
Код

foreach (glob("*gz.") as $filename) {
   unlink($filename);
}


Огромное человеческое Спасибо!!! http://forum.vingrad.ru/topic-36690.html smile  smile  smile 

Прошу прощения за мою невнимательность.

Автор: V13 3.3.2008, 18:46
avers,GeneralElectric огромное спасибо за отклики smile  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)