라이브러리

[PHP] stream_filter_register - 사용자 정의 스트림 필터 등록




PHP Stream Filter

PHP Stream Filter는 데이터를 처리하는 데 사용되는 필터입니다. Stream Filter는 데이터를 읽거나 쓰는 동안 데이터를 변형하거나 검사할 수 있습니다. PHP에서 Stream Filter를 사용하여 데이터를 암호화, 압축, 검사, 변형 등 다양한 작업을 수행할 수 있습니다.

Stream Filter Register

`stream_filter_register` 함수는 Stream Filter를 등록하는 데 사용됩니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째 매개변수는 필터 이름, 두 번째 매개변수는 필터 클래스 이름입니다.

#hostingforum.kr
php

stream_filter_register($filter_name, $filter_class);



예를 들어, 다음 코드는 `string.toupper` 필터를 등록합니다.

#hostingforum.kr
php

stream_filter_register('string.toupper', 'convert.cases');



Stream Filter 사용하기

등록된 Stream Filter를 사용하려면 `stream_filter_append` 함수를 사용합니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째 매개변수는 스트림 이름, 두 번째 매개변수는 필터 이름입니다.

#hostingforum.kr
php

stream_filter_append($stream_name, $filter_name);



예를 들어, 다음 코드는 `string.toupper` 필터를 `php://stdout` 스트림에 등록합니다.

#hostingforum.kr
php

stream_filter_append('php://stdout', 'string.toupper');



예제

다음 예제는 `string.toupper` 필터를 사용하여 데이터를 변형하는 방법을 보여줍니다.

#hostingforum.kr
php

// string.toupper 필터 등록

stream_filter_register('string.toupper', 'convert.cases');



// php://stdout 스트림에 string.toupper 필터 등록

stream_filter_append('php://stdout', 'string.toupper');



// 데이터 변형

echo "Hello, World!
";



이 코드를 실행하면 "HELLO, WORLD!"가 출력됩니다.

Stream Filter 만들기

Stream Filter를 만들려면 `stream_filter_create` 함수를 사용합니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째 매개변수는 필터 이름, 두 번째 매개변수는 필터 클래스 이름입니다.

#hostingforum.kr
php

stream_filter_create($filter_name, $filter_class);



예를 들어, 다음 코드는 `my_filter` 필터를 만들고 등록합니다.

#hostingforum.kr
php

class MyFilter extends StreamFilter {

    public function filter($read, $write, &$meta_data, $flags, &$event) {

        // 데이터 변형

        $write = strtoupper($write);

        return $write;

    }

}



// my_filter 필터 등록

stream_filter_register('my_filter', 'MyFilter');



// php://stdout 스트림에 my_filter 필터 등록

stream_filter_append('php://stdout', 'my_filter');



// 데이터 변형

echo "Hello, World!
";



이 코드를 실행하면 "HELLO, WORLD!"가 출력됩니다.

Stream Filter 삭제하기

등록된 Stream Filter를 삭제하려면 `stream_filter_remove` 함수를 사용합니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째 매개변수는 필터 이름, 두 번째 매개변수는 스트림 이름입니다.

#hostingforum.kr
php

stream_filter_remove($filter_name, $stream_name);



예를 들어, 다음 코드는 `string.toupper` 필터를 삭제합니다.

#hostingforum.kr
php

stream_filter_remove('string.toupper', 'php://stdout');



이 코드를 실행하면 `string.toupper` 필터가 삭제됩니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 1 페이지

검색

게시물 검색