PHP マニュアル
前のページ |  | 次のページ

# fseek

(PHP 3, PHP 4, PHP 5)

fseek -- ファイルポインタを移動する

## 説明

int fseek ( resource handle, int offset [, int whence] )

`handle` が指しているファイルのファイル位置識別子を ファイル・ストリーム中の `offset` バイト目に セットします。新規位置は、ファイルの先頭からのバイト数で 測られます。これは `whence` で指定した位置に `offset` を追加することにより得られます。 この値は、以下のように定義されます。

`SEEK_SET` - 位置を `offset` バイト目に設定する
`SEEK_CUR` - 現在の位置に `offset` を加えた位置に設定する。
`SEEK_END` - ファイル終端に `offset` を加えた位置に設定する （ファイル終端よりも手前に設定する場合、 `offset` に負の値をセットする必要があります）

`whence` を指定しない場合、 `SEEK_SET` が指定されたと仮定します。

成功すると 0 を返し、そうでなければ -1 を返します。EOF より先の 位置にシークしてもエラーとはならないので注意してください。

例 1. fseek() の例

`<?php $fp = fopen('somefile.txt', 'r'); // データを読み込む $data = fgets($fp, 4096); // ファイルの先頭に移動する。 // rewind($fp); と等価。 fseek($fp, 0); ?>`

"http://" または "ftp://" フォーマット指定の fopen () により返されたファイルポインタに対しては使わないでください。 fseek() は、("a" フラグ付きでオープンされた) 追加のみ可能なストリームに対する結果も未定義です。

> 注意: 引数 `whence` は PHP 4.0.0 以降で追加されました。

> 注意: 追加モード ("a" or "a+") でファイルをオープンした場合、 ファイル位置によらず、ファイルに書き込むあらゆるデータが追加されます。

ftell() および rewind() も参照ください。

前のページ | ホーム | 次のページ
fscanf | 上に戻る | fstat