Operacje na plikach w PHP nie jest rzeczą skomplikowaną. Spróbuje w jasny sposób przedstawić zapis do pliku oraz jego odczyt.
Zapis do pliku
Funkcja is_writeable() sprawdza czy dany plik istnieje i czy jest do zapisu i jeśli obydwa warunki są spełnione zwraca TRUE w przeciwnym wypadku FALSE
fopen() pobiera uchwyt (powiedzmy, że nawiązuje połączenie) pliku. Jest dwu argumentową funkcją gdzie pierwszy argument to adres pliku, a drugi rodzaj nawiązanego połączenia. Istnieje kilka typów "połączeń".
- "a" - Otwiera plik do zapisu Dane będą dodawane na końcu pliku.
- "a+" - Otwiera plik do odczytu i zapisu. Dane będą dodawane na końcu pliku.
- "r" - Otwiera plik tylko do odczytu.
- "r+" - Otwiera plik do odczytu i zapisu. Dane będą dodawane na początku pliku.
- "w" - Otwiera plik tylko do zapisu i kasuje poprzednią zawartość. Jeśli plik nie istnieje zostanie on stworzony.
- "w+" - Otwiera plik do zapisu i odczytu. Zawartość pliku zostaje skasowana. Jeśli plik nie istnieje zostanie on stworzony.
fwrite() dopisuje dane podane w drugim argumencie funkcji do pliku o uchwycie podanym w pierwszym argumencie. Znak " "; jest znakiem końca linii.
fclose() zamyka połączenie z plikiem.
Pamiętajmy również o ustawieniu odpowiednich uprawnień dla pliku - chmod o wartości 666.
Listing
$nazwa_pliku = "plik.txt";
if (is_writeable($nazwa_pliku))
{
if ($plik = fopen($nazwa_pliku, "a"))
{
if (fwrite($plik, "Linia pierwsza"."
"."Linia druga") !== FALSE) echo "Zapis do pliku zakończył się powodzeniem...";
else echo "Zapis do pliku się nie powiódł...";
fclose($plik);
} else echo "Nie mogę nawiązać połączenia z plikiem...";
} else echo "Do pliku nie można dopisać informacji lub on nie istnieje..."
?>