protected function writeBody()
    {
        if (in_array($this->request->getMethod(), self::$bodyDisallowed)
            || 0 == $this->contentLength
        ) {
            return;
        }

        $position   = 0;
        $bufferSize = $this->request->getConfig('buffer_size');
        $headers    = $this->request->getHeaders();
        $chunked    = isset($headers['transfer-encoding']);
        while ($position < $this->contentLength) {
            if (is_string($this->requestBody)) {
                $str = substr($this->requestBody, $position, $bufferSize);
            } elseif (is_resource($this->requestBody)) {
                $str = fread($this->requestBody, $bufferSize);
            } else {
                $str = $this->requestBody->read($bufferSize);
            }
            if (!$chunked) {
                $this->socket->write($str);
            } else {
                $this->socket->write(dechex(strlen($str)) . "\r\n{$str}\r\n");
            }
            // Provide the length of written string to the observer, request #7630
            $this->request->setLastEvent('sentBodyPart', strlen($str));
            $position += strlen($str);
        }

        // write zero-length chunk
        if ($chunked) {
            $this->socket->write("0\r\n\r\n");
        }
        $this->request->setLastEvent('sentBody', $this->contentLength);
    }
protected function writeBody()
    {
        if (in_array($this->request->getMethod(), self::$bodyDisallowed)
            || 0 == $this->contentLength
        ) {
            return;
        }

        $position   = 0;
        $bufferSize = $this->request->getConfig('buffer_size');
        $headers    = $this->request->getHeaders();
        $chunked    = isset($headers['transfer-encoding']);
        while ($position < $this->contentLength) {
            if (is_string($this->requestBody)) {
                $str = substr($this->requestBody, $position, $bufferSize);
            } elseif (is_resource($this->requestBody)) {
                $str = fread($this->requestBody, $bufferSize);
            } else {
                $str = $this->requestBody->read($bufferSize);
            }
            if (!$chunked) {
                $this->socket->write($str);
            } else {
                $this->socket->write(dechex(strlen($str)) . "\r\n{$str}\r\n");
            }
            // Provide the length of written string to the observer, request #7630
            $this->request->setLastEvent('sentBodyPart', strlen($str));
            $position += strlen($str);
        }

        // write zero-length chunk
        if ($chunked) {
            $this->socket->write("0\r\n\r\n");
        }
        $this->request->setLastEvent('sentBody', $this->contentLength);
    }
protected function writeBody ( ) { if ( in_array ( $ this -> request -> getMethod ( ) , self :: $ bodyDisallowed ) || 0 == $ this -> contentLength ) { return ; } $ position = 0 ; $ bufferSize = $ this -> request -> getConfig ( 'buffer_size' ) ; $ headers = $ this -> request -> getHeaders ( ) ; $ chunked = isset ( $ headers [ 'transfer-encoding' ] ) ; while ( $ position < $ this -> contentLength ) { if ( is_string ( $ this -> requestBody ) ) { $ str = substr ( $ this -> requestBody , $ position , $ bufferSize ) ; } elseif ( is_resource ( $ this -> requestBody ) ) { $ str = fread ( $ this -> requestBody , $ bufferSize ) ; } else { $ str = $ this -> requestBody -> read ( $ bufferSize ) ; } if ( ! $ chunked ) { $ this -> socket -> write ( $ str ) ; } else { $ this -> socket -> write ( dechex ( strlen ( $ str ) ) . "\r\n{$str}\r\n" ) ; } // Provide the length of written string to the observer, request #7630
 $ this -> request -> setLastEvent ( 'sentBodyPart' , strlen ( $ str ) ) ; $ position += strlen ( $ str ) ; } // write zero-length chunk
 if ( $ chunked ) { $ this -> socket -> write ( "0\r\n\r\n" ) ; } $ this -> request -> setLastEvent ( 'sentBody' , $ this -> contentLength ) ; }
Sends the request body

@throws   HTTP_Request2_MessageException
Sends the request body