Aby zapisać dane do pliku, istnieje specjalna funkcja w PHP file_put_contents (). Za jego pomocą możesz zapisywać informacje w pliku na różne sposoby. Rozważ wszystkie przykłady PHP file_put_contents.
Powyższa metoda jest bardzo prosta. Nie ujawnia wszystkich funkcji funkcji i nadaje się tylko do demonstrowania swojej pracy.
Przecież nie zapominaj, że ta metoda nagrywania może się nie udać w działającym serwisie. Ponieważ plik może odbierać żądanie odczytu i zapisu w tym samym czasie. Aby uniknąć takich incydentów, musisz dać naszemu skryptowi wyłączny dostęp do pliku. Aby to zrobić, użyj flagi LOCK_EX blokady.
file_put_contents (document.txt, $ info, LOCK_EX);
?>
Teraz używając LOCK_EX, wszystkie żądania będą przetwarzane po kolei.
W powyższych przykładach funkcja file_put_contents () formatuje plik przed zapisaniem do niego nowych informacji. Możesz również, bez usuwania poprzednich danych, zapisać nowy na końcu, stosując flagę FILE_APPEND.
Jeśli rekord się powiedzie, funkcja zwróci wartość jako rozmiar pliku w bajtach, aw przypadku niepowodzenia zwróci FALSE. Znając te informacje, możesz dokonać kontroli, jak wskazano w powyższym przykładzie.
Możesz użyć tej samej funkcji do zapisywania tablic do pliku, ale musisz wcześniej serializować tablicę. Innymi słowy, przekonwertuj go na tekst. A po napisaniu deserialize wszystko z powrotem do tablicy.
$ masa = tablica (1,2,3); // To jest tablica.
$ document = 'document.txt'; // Plik.
$ info = serialize ($ masa); // Tutaj tablica jest serializowana.
file_put_contents ($ document, $ info); // Napisz do pliku.
$ info = file_get_contents ($ document); // Czytaj plik.
$ mass = unserialize ($ info); // Deserializacja danych pliku w celu przywrócenia tablicy do jej pierwotnego stanu.
?>
Istnieje inna opcja zapisu danych przez PHP - za pomocą funkcji fopen (), fwrite (), fclose (). Są podobne do PHP file_put_contents (), ale pozwalają na bardziej szczegółowe podejście do pisania skryptu, który wykonuje różne operacje na plikach.
Podczas korzystania z funkcji, fopen () należy określić tryb jej działania.
W tym przykładzie funkcja fopen () z trybem "W" (zapis) może zapisywać dane tylko do pliku. Dlatego jego zawartość zostanie usunięta. A jeśli nie ma pliku o tej nazwie, skrypt go utworzy.
$ file = fopen ($ document, "w +"); // Otwórz plik.
Następnie plik jest zapisywany: