【发布时间】:2012-09-10 03:45:24
【问题描述】:
我正在使用 php 的 SOAPClient 类发出 SOAP 请求并获取 SOAP 响应,但我需要在页面上显示请求和响应 xml 以进行调试。问题是,我不知道怎么做。
我可以使用 __getLastRequest() 和 __getLastResponse() 方法来获取 xml 字符串,但是我还没有找到很好地打印它们的方法。我确实发现回显<xmp>[xmlstringhere]</xmp> 会在字符串中放入适当的xml 标签,但是没有任何换行符,这是一个问题,因为xml 响应是巨大的。如果我能在适当的地方换行,并进行适当的缩进,一切都会好起来的。
到目前为止,我一直不得不复制输出的 xml,将其保存为 .xml 文件,然后打开它。有没有办法通过 php 以可读的格式输出东西?
【问题讨论】:
-
如果您让浏览器知道您正在返回 XML(通过将“content-type”标头设置为“application/xml”),然后将 XML 作为您的响应转储,任何现代浏览器应该很好地显示 XML 格式。 Example
-
@Cory - 谢谢,但我没有提到我还在页面上输出其他内容。
-
也许您可以将这个 gem 放到您的应用程序的某个地方并根据需要使用它? XML PHP Pretty Printer
-
@Cory -- 很好,我会试试看的。
标签: php xml soap soap-client