Funkcja PHP unlink

Funkcja PHP unlink
Czasami wymaga usunięcia pliku za pomocą skryptu PHP do celów programowania. Na przykład, jeśli chcesz zastąpić obraz produktu nowym obrazem, poprzedni obraz będzie musiał usunąć przed przesłaniem nowego obrazu. PHP ma wbudowaną funkcję o nazwie unlink () w celu usunięcia pliku. Generuje komunikat E_Warning, jeśli nie jest w stanie usunąć pliku. Użytkownik Linux musi mieć pisemną uprawnienie w katalogu pliku w celu usunięcia.

Składnia:

Składnia funkcji unlink () podano poniżej.

bool unlink (string $ filename [, zasób $ context = null])
  • Pierwszy argument tej funkcji jest obowiązkowy i usuwa nazwę pliku.
  • Drugi argument tej funkcji jest opcjonalny, który służy do ustawienia kontekstu obsługi pliku i zmiany zachowania strumienia. Domyślna wartość tego argumentu to zero.
  • Wraca PRAWDA Jeśli plik pomyślnie usunie; W przeciwnym razie powraca FAŁSZ.

przykłady funkcji unlink ()

Zastosowania funkcji unlink () zostały pokazane w następnej części tego samouczka za pomocą wielu przykładów.

Przykład-1: Usuń istniejący plik

Utwórz plik PHP z następującym skryptem, aby usunąć Temp.tekst Plik, jeśli plik istnieje. Funkcja File_Exists () została użyta w skrypcie do sprawdzenia, czy plik istnieje, czy nie. Jeśli plik istnieje w bieżącej lokalizacji, plik zostanie usunięty za pomocą funkcji unnink (). Komunikat o błędzie zostanie wyświetlony, jeśli plik nie istnieje w bieżącej lokalizacji.

// Przypisz nazwę pliku
$ filename = "temp.tekst";
// Sprawdź istnienie pliku
if (plik_exists ($ nazwa pliku))

// usuń plik
Jeśli (!unlink ($ filename))
Echo ("
Błąd występuje podczas usuwania pliku nazwy $.");

w przeciwnym razie
Echo ("
$ nazwa pliku Plik został usunięty.");


w przeciwnym razie
Echo "
$ nazwa pliku plik nie istnieje.";
?>

Wyjście:

Następujące dane wyjściowe pojawiłby się po wykonaniu poprzedniego skryptu, jeśli plik znajdował się w bieżącej lokalizacji:

Przykład-2: Usuń plik po utworzeniu

Po utworzeniu pliku utwórz plik PHP z następującym skryptem, aby usunąć tekst.plik txt. Funkcja File_Exists () została użyta w skrypcie, aby sprawdzić, czy plik został utworzony. Jeśli plik istnieje w bieżącej lokalizacji, plik zostanie usunięty za pomocą funkcji unnink (). Komunikat o błędzie zostanie wyświetlony, jeśli plik nie istnieje.

// Przypisz nazwę pliku
$ filename = "tekst.tekst";
// Otwórz plik do pisania
$ fh = fopen ($ nazwa pliku, „w+”);
// Napisz tekst w pliku
fwrite ($ fh, „Witamy w Linuxhint.');
fclose ($ fH);
// Sprawdź istnienie pliku
if (plik_exists ($ nazwa pliku))

Echo "
$ nazwa pliku plik istnieje.";
// usuń plik
Jeśli(!unlink ($ filename))
Echo ("
Błąd występuje podczas usuwania pliku nazwy $.");

w przeciwnym razie
Echo ("
$ nazwa pliku Plik został usunięty.");


w przeciwnym razie
Echo "
$ nazwa pliku plik nie istnieje.";
?>

Wyjście:

Po wykonaniu poprzedniego skryptu pojawiłby się następujące dane wyjściowe, gdyby plik został utworzony i poprawnie usunięty:

Przykład-3: Usuń wszystkie pliki konkretnego rozszerzenia

Utwórz plik PHP z następującym skryptem, aby usunąć wszystkie pliki ".tekst" rozszerzenie. Nazwa i rozmiar każdego pliku tekstowego zostaną wydrukowane przed usunięciem pliku.

// wyszukaj wszystkie pliki tekstowe w bieżącej lokalizacji
Foreach (glob ("*.txt ") jako $ nazwa pliku)

// Wydrukuj nazwę pliku i rozmiar
Echo "
Nazwa pliku to $ nazwa pliku ";
Echo "
Rozmiar pliku to ".pliki ($ nazwa pliku).„Bajty.";
// usuń plik
Jeśli (!unlink ($ filename))
Echo ("
Błąd występuje podczas usuwania pliku nazwy $.");
w przeciwnym razie
Echo ("
$ nazwa pliku Plik został usunięty.");

Wyjście:

Poniższe podobne dane wyjściowe pojawi się po wykonaniu poprzedniego skryptu. Poniższe dane wyjściowe pokazuje, że trzy pliki tekstowe zostały usunięte z bieżącej lokalizacji.

Przykład-4: usuń wszystkie pliki z konkretnego katalogu

Utwórz plik PHP z następującym skryptem, aby usunąć wszystkie pliki z lokalizacji, „Temp/obrazy”. Nazwa i rozmiar każdego pliku zostaną wydrukowane przed usunięciem pliku, jak w poprzednim przykładzie. Ciąg „*.*”Został użyty w skrypcie do oznaczania wszystkich plików wszystkich rodzajów rozszerzeń.

// Ustaw ścieżkę katalogu
$ dir_path = "temp/images";
// Wyszukaj wszystkie pliki w katalogu
foreach (glob ($ dir_path."/*.*”) jako $ nazwa pliku)

// Wydrukuj nazwę pliku i rozmiar
Echo "
Nazwa pliku jest $ nazwa pliku";
Echo "
Rozmiar pliku jest ".pliki ($ nazwa pliku)." bajty.";
// usuń plik
Jeśli (!unlink ($ filename))
Echo ("
Błąd występuje podczas usuwania $ nazwa pliku plik.");
w przeciwnym razie
Echo ("
$ nazwa pliku Plik został usunięty.");

Wyjście:

Poniższe podobne dane wyjściowe pojawi się po wykonaniu poprzedniego skryptu. Wyjście pokazuje, że tylko jeden plik został usunięty z bieżącej lokalizacji.

Przykład-5: usuń wszystkie pliki i foldery z katalogu

Katalog może zawierać jeden lub więcej podwodników lub folderów i plików. Wszystkie pliki i foldery są zobowiązane do usunięcia przed usunięciem dowolnego katalogu. Utwórz plik PHP z następującym skryptem, aby usunąć katalog zawierający jeden lub więcej plików i folderów. Nazwana funkcja zdefiniowana przez użytkownika resecedir () został użyty w skrypcie do usuwania wszystkich plików i folderów Temp katalog i uczyń go pustym. Temp Direktory zostanie usunięte, gdy stanie się pusty.

// Ustaw ścieżkę katalogu
$ dir_path = "temp";
// Zdefiniuj funkcję, aby usunąć katalog rekurencyjne
Funkcja usuwana ($ ścieżka)
// Sprawdź pod czynnik podkładowy
$ files = glob ($ ścieżka . „/*”);
// Sprawdź wartość to plik lub folder
foreach ($ pliki jako $ plik)
is_dir (plik $) ? DEVESIDIR ($ plik): unlink ($ plik);

// Usuń katalog
rmdir ($ ścieżka);
// zwróć true
return1;

// Sprawdź zwróconą wartość funkcji
if (resecedir ($ dir_path))
echo „Wszystkie pliki i foldery, w tym katalog $ dir_path, zostały usunięte.";
w przeciwnym razie
Echo „Wystąpił błąd w momencie usunięcia.";
?>

Wyjście:

Następujące dane wyjściowe pojawi się po wykonaniu poprzedniego skryptu, jeśli Temp Katalog istnieje w bieżącej lokalizacji.

Wniosek

W przykładach tego samouczka pokazano różne sposoby korzystania z funkcji unlink () do usuwania plików. Sprawdź inne artykuły z Linux, aby uzyskać więcej wskazówek i samouczków.