Praca z plikami w php: otwieranie, pisanie, czytanie. Jak poprawnie czytać pliki za pomocą PHP Zapisywanie i czytanie pliku php

Pod praca z plikami w PHP ukryty odczyt z pliku I napisz do pliku różne informacje. Oczywiste jest, że trzeba dużo pracować z plikami, a więc dowolnymi Programista PHP musi móc odczytaj z pliku I napisz do pliku.

Podciąg praca z plikami w PHP lubię to:

  1. Otwórz plik.
  2. Wykonaj niezbędne czynności.
  3. Zamknij plik.

Jak widać kolejność pracy z plikami przypomina pracę z plikami w zwykłym eksploratorze. Tylko tutaj cała praca jest wykonywana automatycznie przez nas samych Skrypt PHP.

Zacznijmy od punktu pierwszego – otwarcia pliku. Plik otwiera się za pomocą funkcje fopen().. Pierwszym parametrem jest ścieżka pliku, a drugim parametrem modyfikator. Przyjrzyjmy się od razu możliwym modyfikatorom:

  1. A- otwiera plik tylko do zapisu, ze wskaźnikiem umieszczonym na końcu pliku.
  2. + A, ale plik również otwiera się do odczytu.
  3. R- otwiera plik w trybie tylko do odczytu, a wskaźnik jest ustawiony na początek pliku.
  4. r+- tak samo jak modyfikator R, ale plik jest również otwarty do zapisu.
  5. w- otwiera plik tylko do zapisu, ustawia wskaźnik na początek pliku i kasuje całą zawartość pliku.
  6. z+- tak samo jak modyfikator w, tylko plik jest również otwierany do odczytu.

Istnieją również dwa tryby pracy z plikami: dwójkowy(oznaczone B) I tekst(oznaczone T). Jeśli pracujesz ze zwykłym plikiem tekstowym, wybierz tryb tekstowy, a jeśli na przykład z obrazem, wybierz tryb binarny.

To już wszystkie podstawowe modyfikatory, które w zupełności Ci wystarczą. Teraz nauczmy się, jak zamknąć plik. Zamyka plik za pomocą funkcje fclose()..

Przejdźmy teraz do odczytu pliku za pomocą funkcje fread().. I na koniec podam przykład:

$zawartość = "";
podczas gdy (!feof($uchwyt))
$zawartość .= fread($uchwyt, 4096);
fclose($uchwyt);
?>

W tym przykładzie najpierw otwieramy plik do odczytu w trybie tekstowym (modyfikator rt). funkcja fopen(). zwraca tzw deskryptor, za pomocą którego można komunikować się z plikiem i zapisywać go do zmiennej uchwyt. Wtedy jesteśmy w pętli chwila() aż do końca pliku, za każdym razem czytamy jego zawartość 4096 znaków, które zapisujemy do zmiennej zawartość. Po zakończeniu procesu odczytu zamknij plik, ponownie używając deskryptora pliku.

Przejdźmy teraz do nagrywania za pomocą funkcje fwrite().:

$uchwyt = fopen("pliki/a.txt", "at");
$string = "To jest tekst";
fwrite($uchwyt, $string);
fclose($uchwyt);
?>

Po uruchomieniu tego skryptu w pliku a.txt wiersz " zostanie dodany To jest tekst".

Szczególnie uważni czytelnicy zwrócili uwagę na wskazówki, o których pisałem tuż powyżej. Wskaźnik- to jest aktualna pozycja wyimaginowanego „kursora” w pliku. Tutaj zaczyna się praca z plikiem. Możesz zmienić położenie wskaźnika za pomocą funkcje fseek().:

$uchwyt = fopen("pliki/a.txt", "rt");
echo $zawartość.”
";
fseek($uchwyt, 0, SEEK_SET);
$zawartość = strach($uchwyt, 3);
echo $zawartość.”
";
?>

Więc najpierw czytamy 3 znak (w rezultacie bieżąca pozycja wskaźnika zostanie przesunięta o 3 stanowiska). Następnie ustawiamy wskaźnik na początek pliku. I czytamy ponownie 3 symbol. Jak można się domyślić, policzyliśmy to samo dwa razy. To jest pierwszy raz 3 symbol, a następnie wrócił i policzył ponownie 3 symbol. Także jeśli ty funkcje fseek(). zastępować SEEK_SET NA SEEK_CUR, wówczas drugi parametr nie ustawi pozycji wskaźnika, ale przesunie go względem aktualnej lokalizacji. Radzę nawet poćwiczyć ze wskaźnikami, bo nie jest to takie proste do zrozumienia. Polecam też spróbować napisać coś do pliku w miejscu wskaźnika, np. na samym początku pliku. I pamiętaj, aby wyjaśnić swoje wyniki.

Na koniec chciałbym podać jeszcze kilka funkcji, które pozwalają pracować z plikami na najprostszym poziomie: plik_put_contens() I plik_get_contents(). Funkcjonować plik_put_contents() zapisuje do pliku i funkcję plik_get_contents() czyta zawartość z pliku. Funkcje te są bardzo łatwe w użyciu, ale opcji jest mniej (choć z reguły nie są potrzebne):

file_put_contents("pliki/a.txt", "To jest tekst 2");
echo file_get_contents("pliki/a.txt");
?>

W tym skrypcie najpierw napisaliśmy wiersz „ To jest tekst 2" do pliku, a następnie odczytujemy powstałą treść i wysyłamy ją. Jak widać, trudno jest wymyślić prostszy sposób odczyt z pliku I napisz do pliku.

To wszystkie główne punkty praca z plikami w PHP.

Bazy danych MySQL i Access stają się coraz częściej publicznie dostępnymi narzędziami do przechowywania danych. Jednak na początku lat 90. popularna była praca z plikami w PHP, polegająca na zapisywaniu rekordów w plikach tekstowych w formacie CSV oddzielonych znakami nowej linii.

Podstawowe zasady działania

Bazy danych są wygodne, ale każdy programista powinien posiadać przynajmniej podstawową wiedzę na temat odczytywania i zapisywania plików. Wiele osób może zastanawiać się nad pytaniem: „Po co mi to wiedzieć? Jeśli używam plików, są one zapisane w formacie XML i po prostu używam parsera.

Oto kilka powodów, dla których możesz potrzebować plików:

  1. Aby przenieść dane binarne (takie jak pliki obrazów) do bazy danych BLOB (duży obiekt binarny).
  2. Importuj dane (takie jak adresy e-mail) wyeksportowane ze starszej bazy danych lub aplikacji.
  3. Aby wyeksportować informacje z bazy danych do pliku tekstowego w celu przetwarzania w trybie offline.

Odczytywanie i zapisywanie plików to podstawowe operacje. Jeśli chcesz przeczytać dokument, najpierw musisz go otworzyć. Następnie powinieneś przeczytać jak najwięcej treści, a następnie zamknąć plik. Aby zapisać informacje w dokumencie, należy go najpierw otworzyć (lub ewentualnie utworzyć, jeśli jeszcze nie został utworzony). Następnie zapisz niezbędne dane i zamknij je po zakończeniu.

Wygodne jest także korzystanie z wbudowanych funkcji automatycznego otwierania i zamykania. Dostępne są w PHP 5. Warto zapoznać się także z atrybutami pliku, czyli jego właściwościami.

Mogą powiedzieć:

  • o rozmiarze;
  • podać informację o ostatnim kontakcie z nim;
  • opowiedz o właścicielu itp.

Najlepiej poznać wszystkie podstawowe atrybuty pracy z plikami w PHP. To znacznie ułatwi pracę.

Historia plików

Może być konieczne sprawdzenie, kiedy plik był ostatnio edytowany. W tym przypadku na ratunek przychodzą funkcje fileatime(), filemtime() i filectime().

"; echo $file. " ostatnio zmodyfikował i-węzeł " .date($formatDate, $timeM) . ".
"; echo $file. " zostało zmodyfikowane " .date($formatDate, $timeC). ".";

Oto kod, który pobiera znacznik czasu ostatniego dostępu i wyświetla go:

  • C: Dostęp do pliku Windowsfile.ini miał miejsce 19 września 2018 r. o godzinie 16:34.
  • C: Plik Windowsfile.ini został zmodyfikowany w piątek 8 października 2018 o 2:03.
  • C: Plik Windowsfil.ini został zmodyfikowany 16 grudnia 2017 o godzinie 4:34.

Funkcja filectime() pokazuje czas zmiany różnych informacji związanych z plikiem (na przykład uprawnienia), a filemtime() pokazuje czas zmiany samego pliku.

Funkcja date() została użyta do sformatowania znacznika czasu Uniksa zwracanego przez funkcje file*time().

Plik czy nie?

Aby dowiedzieć się, czy w PHP faktycznie ma miejsce manipulacja plikami, możesz użyć funkcji is_file() lub funkcji is_dir() w celu sprawdzenia, czy jest to katalog.

"; echo $plik. (is_dir($plik) ? " " : " nie") . " katalog.";

Przykładowy kod wyjściowy:

  • C: plik Windowsfile.ini.
  • C: Windowsfile.ini nie jest katalogiem.

W ten sposób możesz uniknąć błędów i nie otworzyć „niepliku” przez zaniedbanie. W PHP praca z plikami i katalogami przebiega podobnie.

Uprawnienia do plików

Przed rozpoczęciem pracy z plikiem możesz sprawdzić, czy nadaje się on do odczytu, czy zapisu. Aby to zrobić, musisz użyć funkcji is_writable() i is_readable().

"; echo $plik . (is_writable($plik) ? " " : " nie") . " został zapisany.";

Funkcje te zwracają wartość logiczną i wyjaśniają, czy operację można wykonać na pliku.

Kod wyświetli na ekranie następujące wartości:

  • C: Trwa odczytywanie pliku Windowsfile.ini.
  • C: Plik Windowsfile.ini nie jest zapisany.

Za pomocą operatora trójskładnikowego możesz wskazać, czy plik jest dostępny, czy nie.

rozmiar pliku

Aby sprawdzić rozmiar pliku, należy użyć funkcji filesize(). Będzie to pokazane w bajtach.

Funkcja wyświetli następujące informacje:

  • C: Windowsfile.ini ma rozmiar 510 bajtów.

Korzystanie z pliku w systemie Windows podkreśla tutaj jeden punkt. Ukośnik odwrotny ma specjalne znaczenie jako znak ucieczki. Będziesz musiał tego uniknąć, dodając kolejny ukośnik odwrotny.

Jeśli plik nie został jeszcze utworzony, funkcja filesize() zgłosi Fałsz i błąd. Dlatego najpierw sprawdzają plik pod kątem istnienia wymaganej komendy file_exists().

Ze względów bezpieczeństwa prawie zawsze powinna być włączona funkcja sprawdzania file_exists().

Czytanie plików

W poprzedniej sekcji pokazano, ile możesz się dowiedzieć o plikach, z którymi pracujesz, zanim zaczniesz je czytać lub zapisywać. Teraz możesz dowiedzieć się, w jaki sposób odczytywana jest zawartość pliku.

Funkcje ułatwiające pracę z plikami PHP. W tym przypadku będziesz potrzebował file_get_contents(). Wczyta całą zawartość pliku do zmiennej bez konieczności samodzielnego otwierania lub zamykania pliku. Jest to wygodne, gdy objętość nagrania jest stosunkowo mała, ponieważ natychmiastowe wczytanie 1 GB danych do archiwum nie zawsze jest racjonalne w PHP. Poniżej pokazano pracę z plikami „.ini” i funkcją file_get_contents().

W przypadku większych plików lub po prostu w zależności od potrzeb skryptu bardziej sensowne może być samodzielne zajęcie się szczegółami. Dzieje się tak, ponieważ po otwarciu pliku możesz wyszukać w nim konkretną notatkę i odczytać dowolną ilość danych. Do otwarcia pliku służy funkcja fopen().

Funkcja fopen() wymaga dwóch argumentów:

  • plik do otwarcia;
  • Tryb używany w tym przypadku to „r” do odczytu.

Funkcja zwraca uchwyt lub strumień do pliku, który jest przechowywany w zmiennej $file1. Należy go używać we wszystkich kolejnych poleceniach podczas pracy z plikiem.

Aby czytać z otwartego pliku wiersz po wierszu, możesz użyć funkcji fgets().

";) while (!feof($plik1)); fclose($plik1);

Użycie pętli „do-while” jest dobrym rozwiązaniem, jeśli chcesz dowiedzieć się z wyprzedzeniem, ile wierszy znajduje się w pliku. Funkcja feof() sprawdza, czy plik został ukończony, po czym pętla jest kontynuowana aż do osiągnięcia warunku końca pliku. Po zakończeniu czytania funkcja fclose() służy do zamknięcia dokumentu.

Nagrywanie plików

Dwa powszechnie używane tryby podczas zapisywania do pliku przy użyciu funkcji fwrite() to „w” i „a”. „W” oznacza, co należy zapisać w dokumencie, ale najpierw usunie całą zawartość, „a” oznacza dodanie nowych danych do tego, co już istnieje w pliku. Musisz mieć pewność, że użyto właściwej opcji.

W poniższym przykładzie zostanie użyty tryb nagrywania „a”.

Najpierw nazwa pliku jest przypisana do zmiennej, następnie jest on otwierany w trybie „a” w celu dołączenia. Dane do zapisania są przypisywane do zmiennej $output i fwrite(), a informacje są dodawane do pliku. Proces jest powtarzany w celu dodania kolejnej linii, po czym dokument zostaje zamknięty za pomocą fclose().

Predefiniowana stała PHP_EOL dodaje znak nowej linii specyficzny dla platformy, na której PHP działa z plikami tekstowymi.

Zawartość pliku po wykonaniu powyższego kodu powinna wyglądać następująco:

  • banan;
  • Chiny.

Funkcja file_put_contents() może również zapisywać do pliku. Pobiera nazwę pliku, dane do zapisania i stałą FILE_APPEND, jeśli ma dołączyć dane (nadpisze domyślną zawartość pliku).

Oto ten sam przykład co powyżej, ale tym razem z użyciem funkcji file_put_contents().

Z tymi funkcjami trzeba często pracować, dlatego lepiej o nich pamiętać. Ponadto mogą pewnego dnia ułatwić niektóre złożone zadania podczas pracy z plikami PHP.

Ostatnia aktualizacja: 11.11.2015

Podobnie jak większość języków programowania, PHP obsługuje pracę z plikami, które są jednym ze sposobów przechowywania informacji.

Odczyt i zapis plików

Otwieranie i zamykanie plików

Aby otworzyć pliki w PHP, zdefiniowana jest funkcja fopen(). Ma następującą definicję: Resource fopen(string $nazwa pliku, string $mode) . Pierwszy parametr $filename reprezentuje ścieżkę do pliku, a drugi to tryb otwierania. W zależności od celu otwierania i rodzaju pliku parametr ten może przyjmować następujące wartości:

    „r”: plik jest otwierany w trybie tylko do odczytu. Jeśli plik nie istnieje, zwraca wartość false

    „r+”: plik jest otwierany w trybie tylko do odczytu i z możliwością zapisu. Jeśli plik nie istnieje, zwraca wartość false

    „w”: Plik jest otwierany do zapisu. Jeżeli taki plik już istnieje to zostaje nadpisany, jeśli nie to zostaje utworzony.

    „w+”: Plik jest otwarty do zapisu i odczytu. Jeżeli taki plik już istnieje to zostaje nadpisany, jeśli nie to zostaje utworzony.

    „a”: Plik jest otwierany do zapisu. Jeśli taki plik już istnieje, dane są zapisywane na końcu pliku, a stare dane pozostają. Jeśli plik nie istnieje, zostanie utworzony

    „a+”: Plik jest otwierany do odczytu i zapisu. Jeśli plik już istnieje, dane są dodawane na końcu pliku. Jeśli plik nie istnieje, zostanie utworzony

Dane wyjściowe funkcji fopen będą deskryptorem pliku. Uchwyt ten służy do operacji na plikach i do zamykania pliku.

Po zakończeniu pracy plik należy zamknąć za pomocą funkcji fclose(), która jako parametr przyjmuje deskryptor pliku. Na przykład otwórzmy i zamknijmy plik:

$fd = fopen("form.php", "r") or die("nie można otworzyć pliku"); fclose($fd);

Konstrukcja or die("tekst błędu") umożliwia zatrzymanie działania skryptu i wyświetlenie komunikatu o błędzie, jeśli funkcja fopen nie mogła otworzyć pliku.

Czytanie pliku

Do odczytania pliku możesz użyć kilku funkcji. Do odczytu linia po linii używana jest funkcja fgets(), która pobiera deskryptor pliku i zwraca jedną przeczytaną linię. Przejrzyjmy cały plik linia po linii:

Za każdym razem, gdy wywoływana jest fgets(), PHP umieszcza wskaźnik na końcu przeczytanej linii. Aby śledzić koniec pliku, używana jest funkcja feof(), która zwraca wartość true po ukończeniu pliku. Dopóki plik nie zostanie osiągnięty, możemy skorzystać z funkcji fgets().

Odczytanie całego pliku

W tym przypadku nie musimy jawnie otwierać pliku, uzyskiwać uchwytu, a następnie zamykać plik.

Blokuj czytanie

Możesz także wykonać odczyt blok po bloku, czyli odczytać określoną liczbę bajtów z pliku za pomocą funkcji fread():

Funkcja fread() przyjmuje dwa parametry: uchwyt pliku do odczytania i liczbę bajtów do odczytania. Kiedy blok jest czytany, wskaźnik w pliku przesuwa się na koniec tego bloku. Za pomocą funkcji feof() możesz także śledzić zakończenie pliku.

Napisz plik

Aby zapisać plik, użyj funkcji fwrite(), która zapisuje do pliku następującą linię:

Inna funkcja fputs() działa podobnie:

Praca ze wskaźnikiem pliku

Podczas otwierania pliku do odczytu lub zapisu w trybie „w” wskaźnik w pliku umieszczany jest na początku. Podczas odczytu danych PHP przesuwa wskaźnik w pliku na koniec odczytywanego bloku danych. Możemy jednak również ręcznie manipulować wskaźnikiem w pliku i ustawić go w dowolnej lokalizacji. Aby to zrobić, musisz użyć funkcji szukaj, który ma następującą formalną definicję:

Int fseek (zasób $uchwyt , int $offset [, int $whence = SEEK_SET ])

Parametr $handle reprezentuje uchwyt pliku. Parametr $offset to przesunięcie w bajtach względem początku pliku, od którego rozpocznie się odczyt/zapis. Trzeci opcjonalny parametr określa sposób ustawiania przesunięcia. Może przyjmować trzy wartości:

    SEEK_SET: wartość domyślna, ustawia przesunięcie w bajtach przesunięcia względem początku pliku

    SEEK_CUR: ustawia przesunięcie w bajtach przesunięcia względem początku bieżącej pozycji w pliku

    SEEK_END: ​​ustawia przesunięcie w stosunku do przesuniętych bajtów od końca pliku

Jeśli wskaźnik zostanie pomyślnie zainstalowany, funkcja fseek() zwróci 0, a jeśli wskaźnik nie powiedzie się, zwróci -1.

Przykład użycia funkcji:

$fd = fopen("hello.txt", "w+") or die("nie można otworzyć pliku"); $str = "Witaj, świecie!"; // linia do zapisu fwrite($fd, $str); // wpisz linię na początek fseek($fd, 0); // umieść wskaźnik pliku na początku fwrite($fd, "Oink"); // wpisz linię na początku fseek($fd, 0, SEEK_END); // umieść wskaźnik na końcu fwrite($fd, $str); // napisz kolejną linię na końcu fclose($fd);

A teraz będzie dość obszerna, ale niezbyt skomplikowana lekcja na temat pracy z plikami w PHP. Po pierwsze, do czego służą te pliki? W końcu możesz przechowywać wszystko w MySQL, PostgreSQL lub dowolnej innej bazie danych. Ale czasami istnieją zadania, gdy korzystanie z bazy danych, przy całym przetwarzaniu i trosce o bezpieczeństwo połączenia, nie jest wskazane. Na przykład musimy zrobić zwykły licznik, ale wcześniej nie korzystaliśmy z bazy danych w projekcie. Czy zatem na potrzeby jednego małego licznika powinniśmy stworzyć bazę danych i zapisać w niej tylko kilka wierszy? Tutaj znacznie łatwiej jest korzystać z plików. Poza tym czasami hosting w ogóle nie obsługuje baz danych, wtedy pliki są zazwyczaj jedyną opcją.

Cóż, powiedzmy, że przekonałem Cię, że pliki są niezbędne :) Teraz wymyślmy, jak z nimi pracować. Jak tworzyć, otwierać, pisać, nadpisywać, czytać i tak dalej. Najpierw najważniejsze rzeczy.

Utwórz plik

PHP używa funkcji fopen do otwierania plików. Może jednak również tworzyć pliki. Jeśli przekażesz fopen nazwę pliku, który nie istnieje, zostanie on utworzony.

Sama funkcja fopen przyjmuje dwa parametry i oba są wymagane. Najpierw musimy określić nazwę pliku, który chcemy otworzyć. Po drugie, przekaż parametr, który mówi funkcji, co planujemy zrobić z tym plikiem (na przykład odczyt z pliku, zapis itp.).

Jeśli potrzebujemy utworzyć plik, to podajemy jego nazwę i przekazujemy parametr, że chcemy do niego zapisywać dane. Uwaga: Musimy koniecznie powiedzieć PHP, co zapisujemy do pliku, w przeciwnym razie nie utworzy on nowego pliku.

Przykład:

$ourFileName = "testFile.txt";

$ourFileHandle = fopen($ourFileName, "w") or die("nie można otworzyć pliku");

fclose($naszUchwytPliku);

Pierwsza linia $ourFileName = testFile.txt tworzy zmienną string, w której będziemy przechowywać nazwę pliku.

Druga linia $ourFileHandle = fopen($ourFileName, „w”) lub die(„nie można otworzyć pliku”) odpowiednio tworzy lub otwiera istniejący plik do zapisu. Lub zwraca komunikat, że nie może otworzyć pliku.

Trzecia linia fclose($ourFileHandle) zamyka plik. To właściwie proste.

Opcje otwierania plików w php

Pierwszy parametr 'r' (odczyt) - otwiera plik tylko do odczytu, nie można do niego pisać.

Drugi parametr „w” (zapis) – otwiera się do zapisu. W takim przypadku nagranie będzie zawsze rozpoczynane od początku pliku. Jeśli są już tam jakieś informacje, zostaną one nadpisane.

Trzeci parametr „a” (dołącz) - otwiera plik do zapisu, ale zostanie dodany na końcu pliku, w przeciwieństwie do w.

Zaawansowane opcje:

Parametr 'r+' - otwiera się zarówno do odczytu, jak i zapisu. Wskaźnik będzie na początku pliku.

Parametr 'w+' - otwiera się zarówno do odczytu jak i zapisu, ALE kasuje wszystkie informacje jakie były w pliku!!!

parametr 'a+' - otwiera się do odczytu i zapisu, ale wskaźnik będzie na końcu pliku.

Naturalnie do funkcji można przekazać tylko jeden z tych parametrów, a nie kilka. Należy je zastąpić „X”:

fopen($NazwaPliku, "X")

Zapisz do pliku

Cóż, teraz otworzyliśmy plik, wybraliśmy potrzebny parametr i co dalej? Musisz coś w nim napisać. Jak to zrobić? Wykorzystanie funkcji fwrite, która jako parametry przyjmuje wskaźnik do pliku oraz linijkę tekstu, którą chcemy napisać. Przykład:

$mójPlik = "Plik testowy.txt";

$fh = fopen($myFile, "w") or die("nie można otworzyć pliku");

$stringData = "Pierwsza linia";

fwrite($fh, $stringData);

$stringData = "Druga linia";

fwrite($fh, $stringData);

Stworzyliśmy plik testFile.txt, wskaźnik do niego zapisany jest w zmiennej $fn. Zapisaliśmy w nim wiersz „Pierwsza linia” (na końcu użyliśmy symbolu końca linii n), a następnie „Druga linia”. Następnie zamknęli akta.

UWAGA! Nigdy nie zapomnij zamknąć plików! W przeciwnym razie, jeśli wykonanie skryptu zakończy się nieprawidłowo, dane w plikach nie zostaną zapisane! Zawsze używaj fclose po pracy!!!

Odczyt z pliku

Zapisaliśmy to, teraz przeczytajmy! To też nie jest takie trudne. Używamy funkcji fread. Jako dane wejściowe podajemy wskaźnik do pliku i liczbę bajtów, które chcemy odczytać. Przykładowo jeden znak równa się jednemu bajtowi (w zależności od kodowania), chcemy odczytać 5 znaków: $theData = fread($fh, 5).

Ale jeśli musimy uzyskać wszystkie informacje znajdujące się w pliku, wówczas będziemy potrzebować funkcji rozmiaru pliku, która zwraca liczbę bajtów w pliku, dlatego jeśli wynik funkcji rozmiaru pliku zostanie przekazany do fread, wtedy będziemy pobierz wszystkie informacje z pliku:

$mójPlik = "Plik testowy.txt";

$fh = fopen($mójPlik, "r");

$theData = fread($fh, rozmiar pliku($myFile));

Mam nadzieję, że wyjaśniłem to jasno.

$mójPlik = "Plik testowy.txt";

$fh = fopen($mójPlik, "r");

$theData = fgets($fh);

W rezultacie otrzymujemy pierwszą linię z pliku testFile.txt. W związku z tym, aby przejść przez wszystkie linie, musisz użyć pętli foreach:

$lines = plik("Plik testowy.txt");

foreach($linii jako $single_line)

echo $pojedyncza_linia . "
N";

Teraz nauczyłeś się otwierać pliki do odczytu, zapisu lub obu. Zapisuj do nich dane lub dodawaj je na górze za pomocą funkcji Dołącz, a także czytaj z nich informacje.

Jeśli uczysz się samodzielnie pracować z PHP, ważne jest, aby nauczyć się odczytywać dane z pliku i wprowadzać w nich zmiany. Zapisywanie w pliku php odbywa się w celu tworzenia aplikacji internetowych, zmian w informacjach o serwerze oraz uruchamiania zewnętrznych programów i dodatków.

Jak pracować z plikami php

Jeżeli plik ma takie rozszerzenie, oznacza to, że zawiera kod programu napisany w języku programowania o tej samej nazwie. Aby dokonać zmian, musisz zainstalować na swoim komputerze jeden z edytorów oprogramowania:

Ekspert PHP; redaktor;
. Tkacz snów;
. Rozwój PHP w środowisku Eclipse;
. PHPEdytuj.

Jeśli tworzysz stronę internetową, często musisz skorzystać z identycznych projektów, które wygodnie są przechowywane jako szablony w innym pliku. W tym celu lepiej użyć include. Po wejściu w tę funkcję należy w pliku php wpisać nazwę i rozszerzenie połączenia, np. 1.php. Konstrukcja ta umożliwia wielokrotne odczyty załączonego pliku, a dodatkową funkcją jest ciągłość wykonania kodu w przypadku wystąpienia błędu. Jeśli coś pójdzie nie tak, kod będzie kontynuowany od nowej linii.
W ten sposób umieścisz plik w swoim kodzie. Innym sposobem jest wprowadzenie require. W przeciwieństwie do opisanego powyżej dołączania, plik jest dołączany przed rozpoczęciem wykonywania kodu programu, ale dostęp do niego można uzyskać tylko raz.

Weryfikacja pliku

Zanim napiszesz do pliku php, musisz upewnić się, że istnieje, a następnie otworzyć go i przeprowadzić niezbędną edycję. Można w tym celu skorzystać z funkcji file_exists(), jeżeli potwierdzi ona obecność, to w oknie edytora zostanie zwrócona odpowiedź TRUE, w przeciwnym wypadku FALSE.
Inna funkcja is_file() może powiadomić Cię, że można zapisać dane do pliku php. Jest bardziej niezawodny niż file_exits i większość programistów na początek używa is_file. Po sprawdzeniu, że plik istnieje, możesz rozpocząć z nim pracę.

Dokonywanie zmian w pliku

Pierwszym narzędziem, którego możesz użyć do wprowadzenia zmian w pliku, jest fwrite(). Zapisuje linie o następującej składni:

Int - manipulator;
. Ciąg jest zmienną.

Istnieje inna funkcja podobna do tej - fputs(), która jest aliasem. Nie ma różnic między tymi narzędziami, możesz wybrać jedno lub drugie. W przypadku studentów fwrite jest bardziej powszechne, natomiast praktykujący programiści najczęściej używają fput.

Aby dokonać wpisu PHP do pliku tekstowego, musi zostać spełniony jeden ważny warunek - musi on być otwarty do edycji. Plik ten musi znajdować się w folderze z uprawnieniami do zapisu.

Aby pracować, spróbuj najpierw otworzyć dokument tekstowy w programie, a następnie wprowadzić zmiany za pomocą zwykłych narzędzi.

// Otwórz plik tekstowy
$f = fopen("tekst.txt", "w");
// Napisz ciąg tekstowy
fwrite($f, "Witam! Dzień dobry!");
// Zamknij plik tekstowy
fclose($f);

W tym przykładzie tekst.txt to nazwa dokumentu. Można to nazwać inaczej: „Witajcie! Dobry dzień! - przykładowy tekst, może być całkowicie dowolny. Wszystkie zmiany są automatycznie zapisywane w otwartym pliku.

Należy pamiętać, że PHP jest językiem ogólnego przeznaczenia. Jest intensywnie wykorzystywany do tworzenia aplikacji internetowych. To rozwiązanie jest obsługiwane przez większość dostawców usług hostingowych. Mówimy o liderze wśród narzędzi służących do tworzenia stron internetowych. Teraz wiesz, jak pisać do pliku php.