我正在生成一些XML数据以响应HTTP POST请求。我设置了MIME
header('Content-type: text/xml');
到目前为止一切运转良好。
我按如下方式生成xml响应:
$response = '<?xml version="1.0" encoding="utf-8"?>';
$response .= '<error>';
$response .= '<description>'.$error.'</description>';
$response .= '</error>';
echo $response;
我现在想要格式化XML,而不是看到这个响应:
<?xml version="1.0" encoding="utf-8"?><error><description>Login Error: No Username Supplied</description></error>
他们看到了这个回应:
<?xml version="1.0" encoding="utf-8"?>
<error>
<description>Login Error: No Username Supplied</description>
</error>
我还没有使用过PHP的XML输出,所以不确定是否有一个内置的方法来进行&#34;漂亮的打印&#34;输出上的类型函数?
答案 0 :(得分:0)
使用DOM库并将formatOutput
属性设置为true
$doc = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
$root = $doc->createElement('error');
$doc->appendChild($root);
$desc = $doc->createElement('description', $error);
$root->appendChild($desc);
echo $doc->saveXML();