PHP Velho Oeste 2024


(PHP 8 >= 8.1.0)

fdatasyncSynchronizes data (but not meta-data) to the file


fdatasync(resource $stream): bool

This function synchronizes stream contents to storage media, just like fsync() does, but it does not synchronize file meta-data. Note that this function is only effectively different in POSIX systems. In Windows, this function is aliased to fsync().



The file pointer must be valid, and must point to a file successfully opened by fopen() or fsockopen() (and not yet closed by fclose()).

Return Values

Returns true on success or false on failure.


Example #1 fdatasync() example


= 'test.txt';

$stream = fopen($file, 'w');
fwrite($stream, 'test data');
fwrite($stream, "\r\n");
fwrite($stream, 'additional data');


See Also

  • fflush() - Flushes the output to a file
  • fsync() - Synchronizes changes to the file (including meta-data)

add a note

User Contributed Notes 1 note

greg at example dot com
6 months ago
Does not flush st_atime, st_mtime or st_size.

If you need to use filesize after a write you will need need fsync() or fflush() instead.
To Top