yii\httpclient\XmlFormatter::format PHP Method

format() public method

public format ( Request $request )
$request Request
    public function format(Request $request)
    {
        $contentType = $this->contentType;
        $charset = $this->encoding === null ? Yii::$app->charset : $this->encoding;
        if (stripos($contentType, 'charset') === false) {
            $contentType .= '; charset=' . $charset;
        }
        $request->getHeaders()->set('Content-Type', $contentType);
        $data = $request->getData();
        if ($data !== null) {
            if ($data instanceof DOMDocument) {
                $content = $data->saveXML();
            } elseif ($data instanceof SimpleXMLElement) {
                $content = $data->saveXML();
            } else {
                $dom = new DOMDocument($this->version, $charset);
                $root = new DOMElement($this->rootTag);
                $dom->appendChild($root);
                $this->buildXml($root, $data);
                $content = $dom->saveXML();
            }
            $request->setContent($content);
        }
        return $request;
    }
XmlFormatter