/** * Prepares the raw body. * * @param string $name The name. * @param array|string $data The data. * @param boolean $isFile TRUE if the data is a file path else FALSE. * * @return string The formatted raw body. */ private function prepareRawBody($name, $data, $isFile = false) { if (is_array($data)) { $body = ''; foreach ($data as $subName => $subData) { $body .= $this->prepareRawBody($this->prepareName($name, $subName), $subData, $isFile); } return $body; } $body = '--' . $this->configuration->getBoundary() . "\r\n" . 'Content-Disposition: form-data; name="' . $name . '"'; if ($isFile) { $body .= '; filename="' . basename($data) . '"'; $data = file_get_contents($data); } return $body . "\r\n\r\n" . $data . "\r\n"; }