deflate_init
(PHP 7, PHP 8)
deflate_init — 증분 수축 컨텍스트 초기화
설명
deflate_init(int $encoding
, array $options
= []): DeflateContext|false
지정된 encoding
을 사용하여 증분 수축 컨텍스트를 초기화합니다.
여기서 window
옵션은 알고리즘의 창 크기만 설정합니다. 동일한 매개변수가 사용할 인코딩도 설정하는 zlib 필터와 다릅니다. 인코딩은 encoding
매개변수로 설정해야 합니다.
제한 사항: 현재 GZIP 압축 스트림에 대한 헤더 정보를 설정할 수 있는 메서드는 없으며 다음과 같이 설정됩니다. GZIP 서명(\x1f\x8B
); 압축 메서드(\x08
== DEFLATE); 6 0바이트; 현재 시스템으로 설정된 운영 체제(\x00
= Windows, \x03
= Unix 등)
매개변수
encoding
ZLIB_ENCODING_*
상수 중 하나입니다.options
- 다음 요소를 포함할 수 있는 연관 배열:
- level
- -1..9 범위의 압축 수준; 기본값은 -1입니다.
- memory
- 범위 1..9의 압축 메모리 수준; 기본값은 8입니다.
- window
- 범위
8
..15
의 zlib 창 크기(로그)입니다. 기본값은15
입니다. zlib는 창 크기를8
에서9
로 변경하고ZLIB_ENCODING_RAW
또는ZLIB_ENCODING_GZIP
에 대해 창 크기8
이 요청되면 zlib 1.2.8부터 경고와 함께 실패합니다. - strategy
ZLIB_FILTERED
,ZLIB_HUFFMAN_ONLY
,ZLIB_RLE
,ZLIB_FIXED
또는ZLIB_DEFAULT_STRATEGY
(기본값) 중 하나입니다.- dictionary
- 사전 설정 사전의 문자열 또는 문자열 배열입니다(기본값: 사전 설정 사전 없음).
반환 값
성공하면 deflate 컨텍스트 리소스(zlib.deflate
)를 반환하고 실패하면 false
를 반환합니다.
오류/예외
유효하지 않은 옵션이 options
에 전달되거나 컨텍스트를 생성할 수 없는 경우 E_WARNING
수준의 오류가 생성됩니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | 성공하면 이 함수는 이제 DeflateContext 인스턴스를 반환합니다. 이전에는 리소스가 반환되었습니다. |
기타
- deflate_add() - 데이터를 점진적으로 수축
- inflate_init() - 증분 팽창 컨텍스트 초기화