PHP - 直接I/O函式



PHP 可以支援直接 I/O 函式,如 Posix 標準中所述,用於執行比 C 語言流 I/O 函式(fopen()、read() 等)更低級別的 I/O 函式。只有在需要直接控制裝置時才會考慮使用 DIO 函式。在所有其他情況下,標準檔案系統函式都綽綽有餘。

截至 PHP 5.0.0,此擴充套件僅在 Windows 平臺上可用。

安裝

在使用 PHP 的直接 I/O函式之前,請確保您的 PHP 安裝已更新。這些函式通常包含在標準 PHP 安裝中,但您可以透過檢查版本來驗證。

需求

確保您擁有 PHP 5.0.0 或更高版本。並且它與基於 Unix 的系統和 Windows 相容。

執行時配置

直接 I/O 函式不需要特殊的php.ini設定。這些函式應該可以使用標準的 PHP 配置。但是,如果您正在處理大型檔案,則可能需要調整一些預設設定,例如記憶體限制或執行時間。

資源型別

此擴充套件定義了一種資源型別,即 dio_open() 返回的檔案描述符。

預定義常量

此擴充套件在下面定義了常量,並且僅在擴充套件已編譯到 PHP 中或在執行時動態載入時才可用。

  • F_DUPFD (整數)
  • F_GETFD (整數)
  • F_GETFL (整數)
  • F_GETLK (整數)
  • F_GETOWN (整數)
  • F_RDLCK (整數)
  • F_SETFL (整數)
  • F_SETLK (整數)
  • F_SETLKW (整數)
  • F_SETOWN (整數)
  • F_UNLCK (整數) (整數)
  • F_WRLCK (整數)
  • O_APPEND (整數)
  • O_ASYNC (整數)
  • O_CREAT (整數)
  • O_EXCL (整數)
  • O_NDELAY (整數)
  • O_NOCTTY (整數)
  • O_NONBLOCK (整數)
  • O_RDONLY (整數)
  • O_RDWR (整數)
  • O_SYNC (整數)
  • O_TRUNC (整數)
  • O_WRONLY (整數)
  • S_IRGRP (整數)
  • S_IROTH (整數)
  • S_IRUSR (整數)
  • S_IRWXG (整數)
  • S_IRWXO (整數)
  • S_IRWXU (整數)
  • S_IWGRP (整數)
  • S_IWOTH (整數)
  • S_IWUSR (整數)
  • S_IXGRP (整數)
  • S_IXOTH (整數)
  • S_IXUSR (整數)

函式

以下是直接I/O函式 -

序號 函式及描述
1

dio_close()

函式可以關閉由 fd 給出的檔案描述符。

2

dio_fcntl()

函式可以在 fd 描述符上執行 c 庫的 fcntl 函式。

3

dio_open()

函式可以使用指定的標誌許可權和模式建立許可權開啟一個新的檔名檔案。

4

dio_read()

函式可以從檔案描述符讀取位元組。

5

dio_seek()

函式可以從 whence 中查詢 fd 中的 pos。

6

dio_stat()

函式可以返回有關檔案描述符 fd 的統計資訊。

7

dio_tcsetattr()

函式可以設定序列埠的終端屬性和波特率。

8

dio_truncate()

函式可以透過 offset 位元組截斷具有 fd 描述符的檔案。

9

dio_write()

函式可以將資料寫入 fd,並可選地截斷長度。

php_function_reference.htm
廣告