在Yii中显示XML文档

时间:2011-05-03 14:52:09

标签: xml yii

我想知道是否可以使用Yii显示XML文档。我不想在代码中创建文档,它已经存在。我只是想在浏览器中将它显示为普通视图,除了应该呈现XML文档而不是网页。例如,只需按一下按钮即可显示XML文档。 我希望这个问题有道理..

1 个答案:

答案 0 :(得分:4)

如果您要做的是返回XML文档而不是HTML文档(例如REST API等),只需创建一个具有基本XML的新“xml.php”布局,例如{{1在呈现视图之前的动作中,设置HTTP标头如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes">

Yii REST how-to article中有更多有用的提示。

<强> -OR -

假设您只想在视图操作中输出带有保留间距和标记字符的XML文档供人们阅读(以及示例类型的事物):

header('Content-Type: text/xml');

然后,在您看来:

<?php
public function actionView()
{
$output = $myXMLString; // I don't know where you are getting your XML from, but this is it
$output = htmlentities($output); // convert HTML/XML tags like < to their HTML codes ($lt;))
  $this->render('view',array(
    'xmlString'=>htmlentities($output), // send it to the view for rendering
  ));
}

在回显时将<pre> <?php echo $xmlString ?> <pre> 标记中的XML字符串包装起来应保留XML缩进,并使用<pre>对其进行编码应该会阻止浏览器对htmlentities()进行解析,以便正确显示。{1}}

也可能有一些不错的JavaScript libraries that do XML syntax突出显示。

我希望这能回答你的问题吗?

相关问题