dio_seek

fd 上で whence から pos に移動する

説明

int dio_seek(resource $fd, int $pos, int $whence = SEEK_SET)

関数 dio_seek は、指定されたファイル記述子の ファイル内の位置を変更する際に使用されます。

パラメータ

fd

dio_open が返すファイル記述子。

pos

新しい位置。

whence

位置 pos をどのように解釈するかを指示します。

  • SEEK_SET(デフォルト)- pos がファイル先頭からの位置であることを 指定します。

  • SEEK_CUR - pos が現在のファイル位置からの文字数である ことを指定します。このカウントは正にも負にもなりえます。

  • SEEK_END - pos がファイル終端からの文字数であることを 指定します。負の値は、現在のファイルの範囲内の位置を指定します。 正の値は、現在のファイル終端を越えた位置を指定します。ファイル終端を 超える位置を指定して実際にデータを書き込んだ場合、ファイルは その位置までゼロバイトで埋めて拡張されます。

戻り値

例1 ファイル内の位置の指定

<?php

$fd = dio_open('/dev/ttyS0', O_RDWR);

dio_seek($fd, 10, SEEK_SET);
// ファイル先頭から 10 文字目

dio_seek($fd, -2, SEEK_CUR);
// ファイル先頭から 8 文字目

dio_seek($fd, -5, SEEK_END);
// ファイル終端から 5 文字戻ったところ

dio_seek($fd, 10, SEEK_END);
// ファイル終端からさらに 10 文字進んだところ。
// ファイル終端と現在の位置の間は ゼロ で埋められる。

dio_close($fd);
?>