file_put_contents
funkcja
Zapisuje dane do pliku. Zwraca liczbę zapisanych bajtów lub false przy błędzie. Flaga FILE_APPEND dopisuje zamiast nadpisywać.
file_put_contents(string $filename, mixed $data, int $flags = 0, ?resource $context = null): int|false
file_put_contents to szybki sposób na zapis danych do pliku — odpowiednik sekwencji fopen + fwrite + fclose. Domyślnie nadpisuje istniejący plik. Jeśli chcesz dopisać na końcu, użyj flagi FILE_APPEND. Flaga LOCK_EX zakłada ekskluzywną blokadę podczas zapisu, co chroni przed wyścigiem procesów. Funkcja zwraca false przy błędzie.
<?php
declare(strict_types=1);
$sciezka = __DIR__ . '/logi.txt';
$wpis = date('Y-m-d H:i:s') . ' — nowy wpis' . PHP_EOL;
// Dopisz na koniec pliku, blokując go na czas zapisu
$bajty = file_put_contents($sciezka, $wpis, FILE_APPEND | LOCK_EX);
if ($bajty === false) {
echo 'Zapis nie powiódł się.';
} else {
echo "Zapisano $bajty bajtów.";
}