라이브러리

[PHP] SplFileObject::fseek - 위치를 탐색합니다.




SplFileObject::fseek


`SplFileObject`는 PHP의 SPL(Serializable, Persistent, and Lightweight) 모듈의 일부로, 파일을 다루는 클래스입니다. `fseek` 메소드는 파일 포인터를 특정 위치로 이동시켜주는 메소드입니다.

# 사용법


`fseek` 메소드는 두 개의 인자를 받습니다. 첫 번째 인자는 위치를 나타내는 정수 값, 두 번째 인자는 SEEK_SET, SEEK_CUR, SEEK_END 중 하나입니다.

- `SEEK_SET` : 파일의 시작 위치에서부터 지정된 위치로 이동합니다.
- `SEEK_CUR` : 현재 파일 포인터 위치에서부터 지정된 위치로 이동합니다.
- `SEEK_END` : 파일의 끝 위치에서부터 지정된 위치로 이동합니다.

# 예제


#hostingforum.kr
php

// 파일 열기

$file = new SplFileObject('example.txt', 'r+');



// 파일의 시작 위치에서 10바이트로 이동

$file->fseek(10, SEEK_SET);



// 현재 파일 포인터 위치 출력

echo $file->ftell(); // 10



// 현재 파일 포인터 위치에서 5바이트로 이동

$file->fseek(5, SEEK_CUR);



// 현재 파일 포인터 위치 출력

echo $file->ftell(); // 15



// 파일의 끝 위치에서 10바이트로 이동

$file->fseek(-10, SEEK_END);



// 현재 파일 포인터 위치 출력

echo $file->ftell(); // 15



# 주의사항


- `fseek` 메소드는 파일 포인터를 이동시켜주는 메소드이므로, 파일의 내용을 읽거나 쓰기 전에 사용해야 합니다.
- 파일 포인터가 파일의 끝 위치를 벗어나면, `fseek` 메소드는 파일의 끝 위치로 이동시킵니다.
- 파일 포인터가 파일의 시작 위치를 벗어나면, `fseek` 메소드는 파일의 시작 위치로 이동시킵니다.

# 추가 예제


#hostingforum.kr
php

// 파일 열기

$file = new SplFileObject('example.txt', 'r+');



// 파일의 내용을 읽기 전에 파일 포인터를 10바이트로 이동

$file->fseek(10, SEEK_SET);



// 파일의 내용을 읽기

echo $file->fgets(); // 파일의 10바이트부터 1줄을 읽습니다.



// 파일의 내용을 쓰기 전에 파일 포인터를 10바이트로 이동

$file->fseek(10, SEEK_SET);



// 파일의 내용을 쓰기

$file->fwrite('Hello, World!');



// 파일의 내용을 읽기

echo $file->fgets(); // 파일의 10바이트부터 1줄을 읽습니다.



이 예제에서는 `fseek` 메소드를 사용하여 파일 포인터를 이동시키고, 파일의 내용을 읽고 쓰는 방법을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 143 페이지

검색

게시물 검색