Kasowanie folderu i jego zawartości przez PHP

Szybki hosting dla WordPressa

Korzystając z serwera FTP, nie raz zdarzy nam się nie tylko tworzyć, ale także kasować jego zasoby, np. foldery. Kasowanie folderów to także przydatna funkcja wielu skryptów działających na hostingu i wykonujących różnego rodzaju zadania, czy to niezbędne do działania strony czy też np. zarządzania zasobami i kopiami bezpieczeństwa.

Domyślnie, kasowanie folderu najprościej wykonać logując się klientem FTP (np. Total Commander) do serwera FTP a następnie kasując wybrany zasób. Jeśli z jakiś powodów operacja ta nie jest możliwa do wykonania, lub oczekujemy automatyzacji procesu, poprzez dodanie odpowiedniego wpisu do skryptu, polecamy skorzystać z poniższej składni.

Jak usunąć pusty katalog bez żadnej zawartości?

Aby usunąć pusty folder/plik (niezawierający żadnych plików i innych podkatalogów) bezpośrednio na serwerze FTP, należy stworzyć plik o przykładowej nazwie “usun.php“. W jego zawartości wpisz poniższy fragment kodu (zmieniając nazwę folderu/pliku):

<?php
$katalog = 'home/pliki';
rmdir($katalog);
?>

Zmienna $katalog zawiera ścieżkę do katalogu, który chcemy usunąć.

Przygotowany w ten sposób plik “usun.php” należy umieścić w katalogu głównym serwera. Aby wskazany katalog, mógł zostać usunięty, wywołaj plik “usun.php” za pomocą przeglądarki WWW. W pasku adresu przeglądarki WWW wpisz adres z bezpośrednim wskazaniem na ten plik.
Przykład: http://nazwa_serwera.home.pl/usun.php

W ten sposób zostanie wykonana dyrektywa, która została zapisana w zawartości wywołanego pliku usun.php.

Jak usunąć katalog z zawartością (np. z plikami i/lub podkatalogami)?

W sytuacji, gdy zależy nam na trwałym skasowaniu danego katalogu, wraz z całą jego zawartością, możesz skorzystać z gotowej funkcji PHP (dokumentacja PHP). Gotową funkcję, która pozwoli wykonać zamierzoną operację znajduje się poniżej:

function removeDir($path) {
$dir = new DirectoryIterator($path);
foreach ($dir as $fileinfo) {
if ($fileinfo->isFile() || $fileinfo->isLink()) {
unlink($fileinfo->getPathName());
} elseif (!$fileinfo->isDot() && $fileinfo->isDir()) {
removeDir($fileinfo->getPathName());
}
}
rmdir($path);
}

Aby wywołać powyższą funkcję, należy w miejscu, w którym chcemy użyć funkcji, wpisać poniższy kod:

<?php
$katalog = 'home/pliki';
removeDir($katalog);
?>

Więcej rozwiązań

Hosting stworzony dla WordPressa

Masz stronę WWW na WordPressie? My też uwielbiamy ten system dla stron internetowych. Dlatego stworzyliśmy hosting specjalnie dla jego użytkowników.


  • Czy artykuł był pomocny ?
  • Tak   Nie
Szukaj
Generic filters
Tylko dokładne dopasowania
Szukaj w tytułach
Szukaj w treści
Filter by Article Categories
Najczęściej zadawane pytania
Dodatkowe narzędzia hostingu
Statystyki serwera (nowe)
Połączenie SSH
Statystyki serwera (stare)
WebFTP
Autoinstalator
Kontrola wersji (SVN)
Listy mailingowe
Poczta home.pl
Obsługa poczty webmail
Programy pocztowe
Nowa platforma home.pl
Częste pytania
Bezpieczeństwo
Instalacje
Panel klienta
Domeny
Hosting
Serwer Apache
Bazy danych
Certyfikaty SSL
Zamawianie SSL
Instalacja i konfiguracja SSL
Poczta e-mail
WordPress Hosting SSD
Dodatki od partnerów
Poprzednia platforma home.pl
Certyfikaty SSL
Zamawianie certyfikatów SSL
Konfiguracja i instalacja SSL
Panel home.pl
Informacje podstawowe
Pulpit
Usługi
Płatności
Profil
Centrum Pomocy
Operacje w Panelu home.pl
Serwery
WebFTP
Informacje podstawowe
Konfiguracja serwerów
Serwery Unix
Serwery Windows
Obsługa baz danych
phpMyAdmin (MySQL)
phpPgAdmin (PgSQL)
myLittleAdmin (MSSQL)
Sklep internetowy eSklep
Panel usługi eSklep
RODO w sklepie internetowym
Panel sklepu internetowego
Pierwsze kroki
Promocja sklepu
Sprzedaż
Pierwsze uruchomienie
Dodatki od partnerów
Asortyment
Klienci
Integracje
Inne integracje
Systemy aukcyjne
Baza produktów
Aplikacje
App store
Aplikacja mobilna
Marketing
Modyfikacja wyglądu
Dokumentacja
Dla deweloperów
Style graficzne
Inne zagadnienia
Raporty i statystyki
Zawartość
Filmy instruktażowe
Konfiguracja sklepu
Rozliczenia i dokumenty
Faktury
Zmiana danych (cesja)
Rozliczenia i płatności
Dokumenty do pobrania
Produkty i usługi
Kreator Stron WWW
eCommerce
Moduły
Ustawienia
Szablony
Nawigacja
Publikacja i dodatki
Szybki start
Prestahosting
Profesjonalne usługi IT
Certyfikaty SSL
Przywracanie danych
Udostępnienie logów
Operacje na plikach i bazach danych
WordPress
Terminal płatniczy SumUp
Wordpress hosting SSD
Domeny
Informacje podstawowe
Rejestracja / opłacanie
Konfiguracja domen
Transfer domen
Giełda domen
Dodatki do domen
Serwery VPS
Skrzynki e-mail
Microsoft Exchange
Cloud Email Xchange
Obsługa skrzynek w Panelu home.pl
Jak zarejestrować Personal email lub Business email?
Bezpieczeństwo
eKsięgowość
Reklama internetowa
Reklama Allegro Ads
Tworzenie stron WWW
Contact LEADer
Reklama banerowa Google
Zakupy Google
Google Ads (AdWords)
eKampanie Google
SEMSTORM
Pozycjonowanie
rankingCoach
Baza wiedzy
Facebook
Systemy CMS
Internet w praktyce
Przydatne programy
Konfiguracja programów FTP
Zagadnienia techniczne
.htaccess
mod_rewrite
Kursy i specyfikacje
Kurs HTML
Kurs PHP
Kurs SQL
Rejestracja usług
RODO w home.pl
English
Control Panel
Webmail
FTP
Office 365
WordPress
SSL
Aplikacje w marketplace
SimplySign
SiteLock - ochrona WWW
Dropsuite Email Backup
CCleaner
Antywirus Kaspersky
Dropbox - dysk w chmurze
Płatności PayU
Programy antywirusowe AVAST
Office 365
AVG PC TuneUp
Reklama na start
Google AdWords
Zareklamuj stronę WWW na Facebook
Cloud Email Xchange
Brand24
Microsoft OneDrive
FreshMail.pl
Tłumaczenia online
G Suite - poczta Gmail
Program prowizyjny
Acronis Backup
Informacje podstawowe
Ustawienia dodatkowe
Panel użytkownika
Panel administratora
lub