PHP Conference Japan 2024

fsync

(PHP 8 >= 8.1.0)

fsync同步檔案的變更(包含詮釋資料)

說明

fsync(資源 $stream): 布林值

此函式會同步檔案的變更,包含其詮釋資料。這與 fflush() 類似,但它還會指示作業系統寫入儲存媒體。

參數

串流

檔案指標必須有效,而且必須指向一個由 fopen()fsockopen() 成功開啟(且尚未被 fclose() 關閉)的檔案。

回傳值

成功時回傳 true,失敗則回傳 false

範例

範例 #1 fsync() 範例

<?php

$file
= 'test.txt';

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

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

參見

  • fdatasync() - 同步資料(但不包含詮釋資料)到檔案
  • fflush() - 將輸出刷新到檔案

新增註解

使用者貢獻的註解 1 則註解

12
Dave Gebler
3 年前
兩個值得注意的點

1. fsync() 不適合高吞吐量,僅在檔案寫入的持久性對您真正重要的時候才使用它。

2. fsync() 包含對 fflush() 的隱式呼叫,因此您不需要在同步之前手動刷新。
To Top