Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.

WP_Http_Curl::stream_body( resource $handle, string $data ): int

Grabs the body of the cURL request.


Description

The contents of the document are passed in chunks, so we append to the $body property for temporary storage. Returning a length shorter than the length of $data passed in will cause cURL to abort the request with CURLE_WRITE_ERROR.


Top ↑

Parameters

$handle resource Required
cURL handle.
$data string Required
cURL request body.

Top ↑

Return

int Total bytes of data written.


Top ↑

Source

File: wp-includes/class-wp-http-curl.php. View all references

private function stream_body( $handle, $data ) {
	$data_length = strlen( $data );

	if ( $this->max_body_length && ( $this->bytes_written_total + $data_length ) > $this->max_body_length ) {
		$data_length = ( $this->max_body_length - $this->bytes_written_total );
		$data        = substr( $data, 0, $data_length );
	}

	if ( $this->stream_handle ) {
		$bytes_written = fwrite( $this->stream_handle, $data );
	} else {
		$this->body   .= $data;
		$bytes_written = $data_length;
	}

	$this->bytes_written_total += $bytes_written;

	// Upon event of this function returning less than strlen( $data ) curl will error with CURLE_WRITE_ERROR.
	return $bytes_written;
}

Top ↑

Changelog

Changelog
Version Description
3.6.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.