WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Самая быстрая Тема-конструктор для WordPress
функция не описана

WP_Http::chunkTransferDecode() public WP 2.7.0

Decodes chunk transfer-encoding, based off the HTTP 1.1 specification.

Based off the HTTP http_encoding_dechunk function.

{} Это метод класса: WP_Http{}

Хуков нет.

Возвращает

Строку. Chunked decoded body on success or raw body on failure.

Использование

$result = WP_Http::chunkTransferDecode( $body ) // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid;
$body(строка) (обязательный)
Body content.

Список изменений

С версии 2.7.0 Введена.

Код WP_Http::chunkTransferDecode() WP 5.5.1

<?php
public static function chunkTransferDecode( $body ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid
	// The body is not chunked encoded or is malformed.
	if ( ! preg_match( '/^([0-9a-f]+)[^\r\n]*\r\n/i', trim( $body ) ) ) {
		return $body;
	}

	$parsed_body = '';

	// We'll be altering $body, so need a backup in case of error.
	$body_original = $body;

	while ( true ) {
		$has_chunk = (bool) preg_match( '/^([0-9a-f]+)[^\r\n]*\r\n/i', $body, $match );
		if ( ! $has_chunk || empty( $match[1] ) ) {
			return $body_original;
		}

		$length       = hexdec( $match[1] );
		$chunk_length = strlen( $match[0] );

		// Parse out the chunk of data.
		$parsed_body .= substr( $body, $chunk_length, $length );

		// Remove the chunk from the raw data.
		$body = substr( $body, $length + $chunk_length );

		// End of the document.
		if ( '0' === trim( $body ) ) {
			return $parsed_body;
		}
	}
}