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 )

Grabs the body of the cURL request.

Description 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 Parameters


(resource) (Required) cURL handle.


(string) (Required) cURL request body.

Top ↑

Return Return

(int) Total bytes of data written.

Top ↑

Source Source

File: wp-includes/class-wp-http-curl.php

	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 User Contributed Notes

Top ↑

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