【问题标题】:CodeIgniter output XML in ViewCodeIgniter 在视图中输出 XML
【发布时间】:2011-02-22 09:52:36
【问题描述】:

我试图在视图文件中输出 XML。视图文件是result_view.php,它的第一行是

<?php echo '<?xml version="1.0" encoding="UTF-8"?>'; ?>

但我收到错误“序言中不允许内容”。那么如何正确地做到这一点呢?我使用 Eclipse + PDT。

【问题讨论】:

    标签: php xml codeigniter


    【解决方案1】:

    Codeigniter 4 更新

        $this->response->setHeader('Content-Type', 'text/xml');
    

    【讨论】:

      【解决方案2】:
      <&#063;xml version="1.0" encoding="utf-8" standalone="yes"&#063;>
      

      在 html 中看起来不错,但是接收者(应用程序)必须将 and#063; 替换为 ?

      【讨论】:

        【解决方案3】:

        一个简单的解决方案是在视图文件中设置 php 标头,然后回显 xml 标头。

        将其放在视图文件的顶部:

        <?php header ("Content-Type:text/xml"); ?>
        <?php echo '<?xml version="1.0" encoding="UTF-8"?>';?>
        

        【讨论】:

          【解决方案4】:

          我不知道这是否会导致任何问题,但我在 .htaccess 文件中禁用了 PHP 短打开标记,&lt;?xml 工作。 PHP 不再尝试将 &lt;? 解析为 php 脚本。

          【讨论】:

            【解决方案5】:

            此错误似乎表明您在 声明之前有数据。您的文件开头可能有一个 Byte Order Mark

            尝试在允许您删除任何 BOM(例如 Notepad++)的编辑器中打开您的文件,或者使用能够以十六进制格式查看文件的编辑器打开文件。您还可以使用多种工具来删除 BOM。谷歌了解更多信息,因为您使用的工具会因您的情况和环境而异。

            【讨论】:

              【解决方案6】:

              为什么要使用 php 标签来回显一个简单的字符串?

              把它放在你的视图顶部怎么样:

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

              【讨论】:

              • @Daniel 是的,短标签似乎是问题所在
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2019-12-29
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-12-08
              相关资源
              最近更新 更多