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.";
}