Loading:


Odczyt z pliku

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);


Napisz Artyku³

Listing

<?php

$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...";

?>




Dodano przez: rambo Ranga: 0 Punktów: 0
Komentarze użytkowników
cos mi nie chce dzialac
autor: gokis | 12655 | 2011-11-12 19:50:23


    • Tre¶æ komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2024 v.1.5 | design: diviXdesign & rainbowcolors