ฟังก์ชัน fseek

ฟังก์ชัน fseek ช่วยให้เคลื่อนที่ตัวชี้ตำแหน่งภายในไฟล์ได้ พารามิเตอร์แรกรับตัวชี้ไปยังไฟล์ พารามิเตอร์ที่สองรับการออฟเซ็ตเป็นไบต์ และพารามิเตอร์ที่สาม (ไม่บังคับ) คือจุดเริ่มต้นของการอ้างอิง ฟังก์ชันคืนค่า 0 หากดำเนินการสำเร็จและ -1 หากเกิดข้อผิดพลาด

ไวยากรณ์

phpfseek(resource $handle, int $offset, int $whence = SEEK_SET): int

ตัวอย่าง

ย้ายตัวชี้ไปยังไบต์ที่ 10 จากจุดเริ่มต้นของไฟล์:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, 10);
  echo fgets($file);
  fclose($file);
?>

ตัวอย่าง

ย้ายตัวชี้ไป 5 ไบต์จากตำแหน่งปัจจุบัน:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, 5, SEEK_CUR);
  echo fgets($file);
  fclose($file);
?>

ตัวอย่าง

ย้ายตัวชี้ไป 5 ไบต์จากจุดสิ้นสุดของไฟล์:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, -5, SEEK_END);
  echo fgets($file);
  fclose($file);
?>

ตัวอย่าง

ตรวจสอบผลลัพธ์จากการเรียกใช้ fseek:

php<?php
  $file = fopen('test.txt', 'r');
  $res = fseek($file, 10);
  echo $res; // 0 หากสำเร็จ, -1 หากผิดพลาด
  fclose($file);
?>

ผลลัพธ์จากการทำงานของโค้ด:

php0

ดูเพิ่มเติม

  • ฟังก์ชัน rewind,
    ซึ่งรีเซ็ตตัวชี้ไฟล์
  • ฟังก์ชัน ftell,
    ซึ่งคืนค่าตำแหน่งปัจจุบัน
  • ฟังก์ชัน fread,
    ซึ่งอ่านจากไฟล์