Odczyt z pliku
Funkcja is_readable() działa podobnie jak is_writeable() tyle ze sprawdza czy dany plik istnieje i czy jest on do odczytu.
Pozostała część kodu jest taka sama z drobna różnicą. Funkcja fread() odczytuje dane z pliku o uchwycie podanym w pierwszym argumencie. Ilość danych zależy od drugiego argumenty gdzie podajemy ilość znaków, które chcemy pobrać. Jeśli chcemy pobrać cała zawartość pliku korzystamy z funkcji filesize(), która zwraca wielkość pliku w bajtach. Jak zapewne wiesz jeden znak to jeden bajt.
Zapewne zastanawiasz się dlaczego tekst jest w jednej linii, jak mają być dwie?! Pamiętaj, że w kodzie HTML znak nowej linii jest ignorowany. Można to naprawić, ale o tym pisałem już w innej poradzie.
Istnieje jeszcze kilka innych możliwości odczytu. Możemy skorzystać z funkcji file_get_contents(), która odczytuje dane z pliku I zapisuje do zmiennej w formie ciągu znaków. Funkcja ta jest efektywniejsza od fread().
$dane = file_get_contents($nazwa_pliku);
Ciekawmy rozwiązaniem jest również korzystanie z funkcji file() tworzącej tablicę, której elementami są linie pliku
$dane = file($nazwa_pliku);
Listing
$nazwa_pliku = "plik.txt";
if (is_readable($nazwa_pliku))
{
if ($plik = fopen($nazwa_pliku, "r"))
{
$dane = fread($plik, filesize($nazwa_pliku));
if ($dane === FALSE) echo "Odczyt danych z pliku nie powiódł się...";
else echo "odczytane dane: ".$dane."<br />";
fclose($plik);
} else echo "Nie mogę nawiązać połączenia z plikiem...";
} else echo "Z pliku nie można odczytać informacji lub on nie istnieje...";
?>