라이브러리

[PHP] SplFileObject::__construct - 새 파일 객체 생성




PHP의 SplFileObject::__construct

PHP의 `SplFileObject`는 파일을 다루기 위한 내장 클래스입니다. `__construct` 메소드는 이 클래스의 생성자로, 파일을 열고 SplFileObject 객체를 생성합니다.

SplFileObject::__construct 메소드의 파라미터


`__construct` 메소드는 다음과 같은 파라미터를 받을 수 있습니다.

* `$filename` : 파일 이름 또는 경로
* `$flags` : 파일 열기 모드 (예: `r`, `w`, `a`, `x`, `c`, `b`)
* `$useIncludePath` : `include_path`를 사용할지 여부
* `$context` : 파일을 열 때 사용할 context

예제


다음 예제에서는 `__construct` 메소드를 사용하여 파일을 열고 읽는 방법을 보여줍니다.

#hostingforum.kr
php

// 파일을 열기

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



// 파일 내용을 읽기

while (!$file->eof()) {

    echo $file->fgets() . "
";

}



// 파일을 열기 (include_path 사용)

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



// 파일 내용을 읽기

while (!$file->eof()) {

    echo $file->fgets() . "
";

}



// 파일을 열기 (context 사용)

$context = stream_context_create(array(

    'http' => array(

        'method' => 'GET',

        'header' => 'User-Agent: PHP'

    )

));



$file = new SplFileObject('http://example.com/example.txt', 'r', false, $context);



// 파일 내용을 읽기

while (!$file->eof()) {

    echo $file->fgets() . "
";

}



파일 열기 모드


`__construct` 메소드의 `$flags` 파라미터를 사용하여 파일을 열 때 다양한 모드를 지정할 수 있습니다.

* `r` : 읽기 모드 (기본값)
* `w` : 쓰기 모드 (파일이 이미 존재하면 내용이 지워집니다.)
* `a` : 추가 모드 (파일이 이미 존재하면 내용이 추가됩니다.)
* `x` : 쓰기 모드 (파일이 이미 존재하면 오류가 발생합니다.)
* `c` : 쓰기 모드 (파일이 이미 존재하면 내용이 지워집니다.)
* `b` : 바이너리 모드 (기본값은 텍스트 모드입니다.)

include_path 사용


`__construct` 메소드의 `$useIncludePath` 파라미터를 `true`로 설정하면 `include_path`를 사용하여 파일을 찾습니다.

#hostingforum.kr
php

// include_path 사용

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



context 사용


`__construct` 메소드의 `$context` 파라미터를 사용하여 파일을 열 때 context를 지정할 수 있습니다.

#hostingforum.kr
php

// context 사용

$context = stream_context_create(array(

    'http' => array(

        'method' => 'GET',

        'header' => 'User-Agent: PHP'

    )

));



$file = new SplFileObject('http://example.com/example.txt', 'r', false, $context);



이러한 예제를 통해 `SplFileObject::__construct` 메소드의 다양한 파라미터와 기능을 이해할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

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

검색

게시물 검색