Как удалить папку с другими файлами и папками внутри с помощью PHP

Возможный дубликат:
рекурсивная функция удаления каталога для PHP?

С PHP

Я хочу знать самый простой способ удалить папку с файлами и папками внутри.


person Yasmina Saraya    schedule 26.09.2011    source источник


Ответы (3)


Этот прием из документов по PHP довольно крут:

function rrmdir($path)
{
  return is_file($path)?
    @unlink($path):
    array_map('rrmdir',glob($path.'/*'))==@rmdir($path)
  ;
}

Он использует array_map, который вызывает данную функцию для массива результатов. Он также кроссплатформенный.

person Zach Rattner    schedule 26.09.2011

system("rm -fr $foldername");

Это работает только на unix, но это легко.

person Ariel    schedule 26.09.2011
comment
Я не рекомендую делать это, но если вам нужно, убедитесь, что вы (а) используете escapeshellcmd на $foldername перед вызовом этого, и (б) будьте осторожны с путем, с которого вы выполняете. Я бы убедился, что $foldername - это абсолютный путь, просто на всякий случай. - person Zach Rattner; 26.09.2011
comment
Спасибо, а есть ли у вас способ, не зависящий от оболочки Unix? - person Yasmina Saraya; 26.09.2011