fsync

(PHP 8 >= 8.1.0)

fsyncСинхронизирует изменения в файле (включая метаданные)

Описание

fsync(resource $stream): bool

Функция синхронизирует изменения в файле, включая его метаданные. Она похожа на fflush(), но помимо этого даёт инструкции операционной системе о записи на накопитель.

Список параметров

stream

Указатель на файл должен быть корректным и указывать на файл, успешно открытый функциями fopen() или fsockopen() (и всё ещё не закрытый функцией fclose()).

Возвращаемые значения

Возвращает true в случае успешного выполнения или false в случае возникновения ошибки.

Примеры

Пример #1 Пример использования fsync()

<?php

$file
= 'test.txt';

$stream = fopen($file, 'w');
fwrite($stream, 'тестовые данные');
fwrite($stream, "\r\n");
fwrite($stream, 'дополнительные данные');

fsync($stream);
fclose($stream);
?>

Смотрите также

  • fdatasync() - Синхронизирует данные (но не метаданные) с файлом
  • fflush() - Сбрасывает буфер вывода в файл

add a note add a note

User Contributed Notes 1 note

up
9
Dave Gebler
2 years ago
Two points worth noting:

1. fsync() is not suitable for high throughput, use it only when the durability of a file write really matters to you.

2. fsync() includes an implicit call to fflush() so you don't need to manually flush before you sync.
To Top