fscanf
fstat
ファイルシステム 関数
PHP Manual

# fseek

(PHP 4, PHP 5)

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

### 説明

int fseek ( resource `$handle` , int `$offset` [, int `$whence` = SEEK_SET ] )

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

### パラメータ

`handle`

  fopen() を使用して作成したファイルシステムポインタリソース。

`offset`

  オフセット。

  ファイルの終端から数えた位置に移動するには、負の値を `offset` に渡して `whence` を `SEEK_END` に設定しなければなりません。

`whence`

  `whence` の値は以下のようになります。

  - `SEEK_SET` - 位置を `offset` バイト目に設定する
  - `SEEK_CUR` - 現在の位置に `offset` を加えた位置に設定する
  - `SEEK_END` - ファイル終端に `offset` を加えた位置に設定する

### 返り値

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

### 例

例1 fseek() の例

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

### 注意

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

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

### 参考

- ftell() - ファイルの読み書き用ポインタの現在位置を返す
- rewind() - ファイルポインタの位置を先頭に戻す

fscanf
fstat
ファイルシステム 関数
PHP Manual