inflate_init
(PHP 7, PHP 8)
inflate_init — Initialize an incremental inflate context
설명
inflate_init(int $encoding
, array $options
= []): InflateContext|false
지정된 encoding
으로 증분 팽창 컨텍스트를 초기화합니다.
매개변수
encoding
ZLIB_ENCODING_*
상수 중 하나입니다.options
- 다음 요소를 포함할 수 있는 연관 배열:
- level
- -1..9 범위의 압축 수준; 기본값은 -1입니다.
- memory
- 범위 1..9의 압축 메모리 수준; 기본값은 8입니다.
- window
- 범위 8..15의 zlib 창 크기(로그)입니다. 기본값은 15입니다.
- strategy
ZLIB_FILTERED
,ZLIB_HUFFMAN_ONLY
,ZLIB_RLE
,ZLIB_FIXED
또는ZLIB_DEFAULT_STRATEGY
(기본값) 중 하나입니다.- dictionary
- 사전 설정 사전의 문자열 또는 문자열 배열입니다(기본값: 사전 설정 사전 없음).
반환 값
성공하면 확장 컨텍스트 리소스(zlib.inflate
)를 반환하고 실패하면 false
를 반환합니다.
오류/예외
잘못된 인코딩이나 옵션이 options
에 전달되거나 컨텍스트를 생성할 수 없으면 E_WARNING
수준의 오류가 생성됩니다.
유효하지 않은 인수가 주어지면 E_WARNING
수준의 오류가 생성됩니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | 성공하면 이 함수는 이제 InflateContext 인스턴스를 반환합니다. 이전에는 리소스가 반환되었습니다. |
노트
주의 gzinflate()와 달리 증분 팽창 컨텍스트는 디코딩된 데이터의 길이를 제한하지 않으므로 Zip 폭탄에 대한 자동 보호 기능을 제공하지 않습니다.
기타
- inflate_add() - 인코딩된 데이터를 점진적으로 확장
- deflate_init() - Initialize an incremental deflate context