Php unlink -funksjon

Php unlink -funksjon
Noen ganger krever det å slette en fil ved å bruke et PHP -skript til programmeringsformål. Hvis du for eksempel vil erstatte et bilde av et produkt med et nytt bilde, vil det forrige bildet bli pålagt å fjerne før du laster opp det nye bildet. PHP har en innebygd funksjon som heter Unlink () for å fjerne en fil. Det genererer en e_warning -melding hvis den ikke kan slette filen. Linux -brukeren må ha skriftlig tillatelse på filens katalog for å slette.

Syntaks:

Syntaksen til unlink () -funksjonen er gitt nedenfor.

bool unlink (streng $ filnavn [, ressurs $ kontekst = null])
  • Det første argumentet for denne funksjonen er obligatorisk og tar filnavnet fjernet.
  • Det andre argumentet for denne funksjonen er valgfritt, som brukes til å angi filhandlerens kontekst og endre strømmenes oppførsel. Standardverdien for dette argumentet er null.
  • Det kommer tilbake ekte Hvis filen sletter vellykket; Ellers kommer det tilbake Falsk.

unlink () funksjonseksempler

Bruken av unlink () -funksjonen er vist i neste del av denne opplæringen ved å bruke flere eksempler.

Eksempel-1: Slett en eksisterende fil

Opprett en PHP -fil med følgende skript for å slette Temp.tekst fil hvis filen eksisterer. File_Exists () -funksjonen har blitt brukt i skriptet for å sjekke om filen eksisterer eller ikke. Hvis filen eksisterer på det gjeldende stedet, blir filen slettet ved hjelp av unlink () -funksjonen. En feilmelding vises hvis filen ikke eksisterer på det nåværende stedet.

// tilordne filnavnet
$ filnavn = "Temp.tekst";
// sjekk eksistensen av filen
if (file_exists ($ filnavn))

// Slett filen
hvis (!unlink ($ filnavn))
ekko ("
Feil oppstår mens du sletter filnavnfilen $.");

annet
ekko ("
De $ filnavn Filen er slettet.");


ellers
ekko "
De $ filnavn Filen eksisterer ikke.";
?>

Produksjon:

Følgende utdata vil vises etter å ha utført det forrige skriptet hvis filen var på det nåværende stedet:

Eksempel-2: Slett filen etter opprettelse

Etter å ha opprettet filen, oppretter du en PHP -fil med følgende skript for å slette teksten.txt -fil. File_Exists () -funksjonen har blitt brukt i skriptet for å sjekke om filen er opprettet. Hvis filen eksisterer på det gjeldende stedet, blir filen slettet ved hjelp av unlink () -funksjonen. En feilmelding vises hvis filen ikke eksisterer.

// tilordne filnavnet
$ filnavn = "tekst.tekst";
// Åpne fil for skriving
$ fh = fopen ($ filnavn, 'w+');
// Skriv litt tekst i filen
fwrite ($ fh, 'Velkommen til Linuxhint.');
fClose ($ fh);
// sjekk eksistensen av filen
if (file_exists ($ filnavn))

ekko "
De $ filnavn Filen eksisterer.";
// Slett filen
hvis(!unlink ($ filnavn))
ekko ("
Feil oppstår mens du sletter filnavnfilen $.");

annet
ekko ("
De $ filnavn Filen er slettet.");


ellers
ekko "
De $ filnavn Filen eksisterer ikke.";
?>

Produksjon:

Etter å ha utført det forrige skriptet, vil følgende utdata vises hvis filen ble opprettet og slettet riktig:

Eksempel-3: Slett alle filer i den aktuelle utvidelsen

Opprett en PHP -fil med følgende skript for å slette alle filene til “.tekst" Utvidelse. Navnet og størrelsen på hver tekstfil vil bli skrevet ut før du sletter filen.

// Søk i alle tekstfiler på gjeldende sted
foreach (glob ("*.txt ") som $ filnavn)

// Skriv ut filnavnet og størrelsen
ekko "
Filnavnet er $ filnavn ";
ekko "
Størrelsen på filen er ".FilSize ($ filnavn)."byte.";
// Slett filen
hvis (!unlink ($ filnavn))
ekko ("
Feil oppstår mens du sletter filnavnfilen $.");
ellers
ekko ("
De $ filnavn Filen er slettet.");

Produksjon:

Følgende lignende utdata vises etter å ha utført forrige skript. Følgende utdata viser at tre tekstfiler ble slettet fra gjeldende plassering.

Eksempel-4: Slett alle filer fra den aktuelle katalogen

Opprett en PHP -fil med følgende skript for å slette alle filer fra stedet, “Temp/bilder”. Navnet og størrelsen på hver fil vil bli skrevet ut før du sletter filen, som i forrige eksempel. Strengen “*.*”Har blitt brukt i skriptet for å betegne alle filer av alle typer utvidelser.

// Angi katalogstien
$ dir_path = "temp/bilder";
// Søk i alle filer i katalogen
Foreach (glob ($ dir_path."/*.*") som $ filnavn)

// Skriv ut filnavnet og størrelsen
ekko "
Filnavnet er $ filnavn";
ekko "
Størrelsen på filen er "".FilSize ($ filnavn)."" byte.";
// Slett filen
hvis (!unlink ($ filnavn))
ekko ("
Feil oppstår mens du sletter $ filnavn fil.");
ellers
ekko ("
De $ filnavn Filen er slettet.");

Produksjon:

Følgende lignende utdata vises etter å ha utført forrige skript. Utgangen viser at bare en fil ble slettet fra gjeldende plassering.

Eksempel-5: Slett alle filer og mapper fra katalogen

En katalog kan inneholde en eller flere underkataloger eller mapper og filer. Alle filer og mapper er pålagt å fjerne før du sletter noen katalog. Opprett en PHP -fil med følgende skript for å slette en katalog som inneholder en eller flere filer og mapper. Den brukerdefinerte funksjonen som heter fjernet () har blitt brukt i skriptet for å fjerne alle filer og mapper i temp katalog og gjøre den tom. De temp Katalogen blir fjernet når den blir tom.

// Angi katalogstien
$ dir_path = "temp";
// definere funksjon for å slette katalogen rekursivt
funksjon fjernet ($ bane)
// sjekk for underkatalogen
$ filer = glob ($ sti . '/*');
// sjekk verdien er fil eller mappe
foreach ($ filer som $ fil)
is_dir ($ fil) ? fjernet ($ fil): unlink ($ fil);

// Fjern katalogen
rmdir ($ bane);
// Returner sann
retur1;

// sjekk den returnerte verdien av funksjonen
if (fjernetir ($ dir_path))
Ekko "Alle filer og mapper inkludert Dir_Path -katalogen er slettet.";
ellers
ekko "feil oppstod på slettetidspunktet.";
?>

Produksjon:

Følgende utgang vises etter å ha utført det forrige skriptet hvis temp Katalogen eksisterer på det nåværende stedet.

Konklusjon

Ulike måter å bruke unlink () -funksjonen for å slette filer er vist i eksemplene på denne opplæringen for å hjelpe PHP -brukere med å bruke denne funksjonen riktig. Sjekk de andre Linux -hint -artiklene for flere tips og opplæringsprogrammer.