Skriva till fil
Spara data i en fil på servern, så att den finns kvar mellan sidvisningar och för alla besökare.
Varför filer?
Variabler försvinner när sidan är färdigkörd, och sessioner gäller bara en besökare. Det som ska finnas kvar för alla, som inläggen i en gästbok, måste sparas på servern. En fil är det enklaste sättet.
file_put_contents
Det enklaste sättet att skriva till en fil är file_put_contents(). Filen skapas om den inte finns.
- Utan
FILE_APPENDersätts allt som fanns i filen. "\n"är en radbrytning. Den måste stå inom dubbla citattecken.
I portalen sparas filerna tillfälligt i webbläsarens minne och försvinner när du laddar om sidan. På din egen dator hamnar filen i mappen där PHP-filen ligger.
fopen: mer kontroll
Vill du skriva i flera steg öppnar du filen med fopen(), skriver med fwrite() och stänger med fclose().
Det andra värdet till fopen() är läget, som anger vad du får göra med filen:
| Läge | Betyder |
|---|---|
r |
Läsa (read) |
r+ |
Läsa och skriva. Filen måste finnas. |
w |
Skriva (write). Filen skapas, och befintligt innehåll raderas. |
w+ |
Skriva och läsa |
a |
Lägga till i slutet (append) |
x |
Skriva. Misslyckas om filen redan finns. |
c |
Skriva. Filen skapas om den saknas, men innehållet raderas inte. |
Med ett + efter x, c eller a öppnas filen även för läsning.
Prova själv
- Kör det andra exemplet flera gånger. Vad händer med filen?
- Byt läget
"a"mot"w"och kör flera gånger. Vad är skillnaden? - Ta bort
FILE_APPENDi det första exemplet. Hur många rader finns kvar?