gpt4 book ai didi

php - 当 XML 具有 PHP 扩展时,浏览器无法正确显示带有 CSS 的 XML

转载 作者:行者123 更新时间:2023-11-28 13:48:57 34 4
gpt4 key购买 nike

我正在使用 PHP 文件输出 XML 文档。
我正在使用 CSS 文件来格式化该 XML 文档。
我的浏览器 (Safari) 不会显示格式,除非我给它提供一个扩展名为 xml 的文件。我认为 header 优先于扩展名。

parser.php(php处理后)

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="parser.css"?>
<Main>
<Test>This is some test text that should appear in Blue.</Test>
</Main>

解析器.css

Main { 
background-color: gray;
}
Test {
color: blue;
}

如果我将 php 文件的输出保存为 xml 并在浏览器中查看,那么它会正确显示格式。但我需要即时生成 xml。
这是预期的行为吗?我想我可以用 php 生成一个单独的文件,然后将浏览器转发到那里。
或者我可以设置我的服务器来解析 xml 文件,然后将我的 php 文件(包含所有代码)的扩展名更改为 XML。但这些似乎都不是必需的。

最佳答案

文档以 text/html 形式返回(因为这是您的服务器作为内容类型 header 发送的内容)。您需要强制它以 XML 形式返回,这应该可以解决您的问题。

// Before you render parser.php...
header('Content-type: text/xml');

这样,无论扩展名如何,您的浏览器都知道将其呈现为 XML。

关于php - 当 XML 具有 PHP 扩展时,浏览器无法正确显示带有 CSS 的 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3384497/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com