fseek
<?php
/*
fseek
ファイルのポインタを移動します。
戻り値(int) = fseek(ファイルのハンドル, オフセット [, $whence = 指定した位置]);
0:[成功]
-1:[失敗]
$whence
SEEK_SET:位置をオフセットに設定します
SEEK_CUR:現在の位置にオフセットを加えた位置に設定します
SEEK_END:ファイルの終端にオフセットを加えた位置に設定します
*/
$path = \"sample.txt\";
$no=1;//行数
print \"使用するファイルの内容 ---------------------<br />\";
$fp = fopen($path, \"r\");
//「!」を使い終端でない場合はwhileで処理を続けています。
while(!feof($fp))
{
print $no.\"行目 \".fgets($fp).\"<br />\";
$no++;
}
print \"fseekを使た結果 ----------------------------<br />\";
//先頭にポインタを移動します。
fseek($fp, 0);
print \"読み込み結果: \".fgets($fp).\"<br />\";
//ポインタを終端に移動します。
fseek($fp, 0, SEEK_END);
//10バイト分ポインタの位置を戻します。
fseek($fp, -18, SEEK_CUR);
print \"読み込み結果: \".fgets($fp).\"<br />\";
fclose($fp);
/*
[出力結果]
使用するファイルの内容 ---------------------
1行目 むかしむかし
2行目 おじいさんとおばあさんがいました。
3行目 おじいさんは山にしばかりに
4行目 おばあさんは
5行目 川に洗濯にいきました。
fseekを使た結果 ----------------------------
読み込み結果: むかしむかし
読み込み結果: 洗濯にいきました。
*/
?>
|
|