Operacje wejścia/wyjścia na plikach
Stronę tą wyświetlono już: 2365 razy
Otwieranie pliku za pomocą funkcji fopen
Za pomocą funkcji fopen można otworzyć plik w kilku różnych trybach:
- r - tylko do odczytu, wskaźnik pliku ustawiony jest na początku pliku;
- w - tylko do zapisu. Usuwa zawartość pliku lub tworzy nowy jeżeli ten nie istnieje;
- a - otwiera tylko do zapisu z zachowaniem danych w nim zawartych. Wskaźnik pliku jest ustawiony na jego końcu a plik w przypadku, gdy nie istnieje zostanie utworzony;
- x - tworzy plik tylko do zapisu, zwraca FALSE, gdy plik już istnieje;
- r+ - otwiera do odczytu i zapisu. Wskaźnik pliku zaczyna się na jego początku;
- w+ - otwiera plik do odczytu i zapisu. Usuwa zawartość pliku lub tworzy nowy, jeżeli ten nie istniał;
- a+ - otwiera plik do odczytu i zapisu. Dane w pliku (jeżeli ten istniał) zostaną zachowane a wskaźnik pliku ustawiony jest na jego koniec. Tworzy nowy plik, jeżeli ten nie istniał wcześniej;
- x+ - otwiera plik do odczytu i zapisu. Zwraca fałsz, gdy ten już istnieje.
Przykład otwarcia pliku:
Wczytywanie danych linia po linii
W celu wczytania pojedynczej linii pliku należy skorzystać z funkcji fgets, oto przykład wczytania pojedynczej linii pliku:
Możliwe jest również wczytanie całego pliku linia po linii z użyciem funkcji feof:
Wczytywanie pliku znak po znaku
Istnieje również funkcja fgetc, która umożliwia wczytanie pojedynczego znaku pliku:
Wczytywanie całej zawartości pliku
Cały plik można wczytać do zmiennej korzystając z funkcji fread:
Zapis do pliku
Za pomocą funkcji fwrite możliwe jest zapisanie danych do pliku:
Zamykanie pliku
We wszystkich powyższych plikach brakuje tylko zamknięcia pliku za pomocą funkcji fclose:
Zmiana położenia wskaźnika pliku
Czasami zachodzi konieczność zmiany położenia wskaźnika pliku. W tym celu należy posłużyć się funkcją fseek, która przyjmuje trzy parametry:
- uchwyt pliku;
- przesunięcie wskaźnika;
- określenie punktu, względem którego przesunięcie zostanie ustawione. Możliwe ustawienia to:
- SEEK_SET - ustawia położenie względem początku pliku (domyślnie ustawione);
- SEEK_CUR - ustawia położenie względem obecnej pozycji wskaźnika pliku;
- SEEK_END - ustawia położenie względem końca pliku
Przykład:
Pozyskiwanie bieżącej pozycji wskaźnika pliku
Za pomocą funkcji ftell możliwe jest ustalenie położenie wskaźnika pliku:
Tytuł:
PHP i MySQL. Aplikacje internetowe po stronie serwera
Autor:
Jon Duckett
Tytuł:
PHP 8 i SQL. Programowanie dla początkujących w 43 lekcjach
Autor:
Mariusz Duka
Tytuł:
CodeIgniter 4. Zaawansowane tworzenie stron WWW w PHP
Autor:
Łukasz Sosna
Tytuł:
PHP 7 MySQL 8 i Maria DB Praktyczny podręcznik
Autor:
Steve Prettyman, Adrian W. West
Tytuł:
PHP i MySQL. Dynamiczne strony WWW. Szybki start. Wydanie V
Autor:
Larry Ullman
Tytuł:
PHP 7. Algorytmy i struktury danych
Autor:
Mizanur Rahman
Tytuł:
PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty. Wydanie V
Autor:
Luke Welling, Laura Thomson
Tytuł:
PHP i jQuery. Techniki zaawansowane. Wydanie II
Autor:
Keith Wald, Jason Lengstorf
Tytuł:
Laravel 4. Podstawy tworzenia aplikacji w PHP
Autor:
Raphaël Saunier
Tytuł:
Magento. Przewodnik dla programistów PHP
Autor:
Allan MacGregor