Funkcja fpassthru() w PHP
Definicja i użycie
Funkcja fpassthru() zwraca wszystkie pozostałe dane z miejsca wskaźnika pliku.
Funkcja ta odczytuje dane z podanego wskaźnika pliku od bieżącej pozycji do EOF i zapisuje wynik do bufora wyjściowego.
Gramatyka
fpassthru(file)
Parametr | Opis |
---|---|
file | Wymagane. Określa otwarty plik lub zasób do odczytania. |
Opis
W przypadku wystąpienia błędu, fpassthru() zwraca false. W przeciwnym razie fpassthru() zwraca z file czyta i przekazuje do wyjścia liczby znaków.
Wskazówka plikowa musi być ważna i musi wskazywać na plik, który fopen() Lub fsockopen() otwiera się pomyślnie (ale jeszcze nie został użyty) fclose() zamkniętych plików.
Wskazówki i komentarze
Wskazówka:Jeśli już napisałeś dane do pliku, musisz wywołać rewind() aby przesunąć wskaźnik pliku do początku pliku.
Wskazówka:Jeśli nie ma potrzeby modyfikowania pliku ani wyszukiwania w określonym miejscu, a tylko chcesz pobrać zawartość pliku do bufora wyjściowego, powinieneś użyć readfile()to pozwala na uniknięcie wywołania fopen().
Komentarz:Gdy w systemie Windows używasz fpassthru() dla plików binarnych, upewnij się, że w trybie otwierania pliku fopen() dodałeś b, aby otworzyć plik w trybie binarnym. Zaleca się używanie znaku b przy przetwarzaniu plików binarnych, nawet jeśli system nie wymaga tego, aby poprawić przenośność skryptu.
Przykład
Przykład 1
<?php $file = fopen("test.txt","r"); // Odczytaj pierwszą linię fgets($file); // Wysyłaj resztę pliku do bufora wyjściowego echo fpassthru($file); fclose($file); ?>
Wyjście:
W tym pliku znajduje się trzy linie. To jest ostatnia linia.59
Uwaga:59 wskazuje na liczbę przekazywanych znaków.
Przykład 2
Eksportuj stronę index www serwera:
<?php $file = fopen("http://www.example.com","r"); fpassthru($file); ?>