使用php输出原始XML

RNs*_*ost 23 php xml

我想以类似于http://www.google.com/ig/api?weather=Mountain+View但使用PHP 的方式输出原始xml .

我的网络服务器上有一个非常简单的PHP脚本:

<?php 

      $output = "<root><name>sample_name</name></root>";
      print ($output);
?> 
Run Code Online (Sandbox Code Playgroud)

我在Chrome/firefox中看到的只是"sample_name".我想看看:

<root>
     <name>sample_name</name>
</root>
Run Code Online (Sandbox Code Playgroud)

我找不到任何简单的教程.

谢谢

Arn*_*anc 59

默认情况下,PHP将Content-Type设置为text/html,因此浏览器将XML文档显示为HTML页面.

要使浏览器将文档视为XML,您必须设置content-type:

header('Content-Type: text/xml');
Run Code Online (Sandbox Code Playgroud)

在脚本中打印任何内容之前执行此操作.


Ped*_*ito 11

<?php 
header('Content-Type: application/xml');
$output = "<root><name>sample_name</name></root>";
print ($output);
?> 
Run Code Online (Sandbox Code Playgroud)


IMS*_*SoP 5

为了完整起见,正如还没有人提到的那样,您还可以通过转义as 、as和as来HTML 页面中输出原始 XML 。为此,请使用名称尴尬的function<&lt;>&gt;&&amp;htmlspecialchars

通常,您还希望在参数中保留空格,这可以通过将其括在<pre>标签中来完成。因此,用于调试或包含示例的常用行是:

 echo '<pre>' . htmlspecialchars($raw_xml) . '</pre>';
Run Code Online (Sandbox Code Playgroud)