gpt4 book ai didi

php - XML 输出 - PHP、JS 与其他什么?

转载 作者:行者123 更新时间:2023-11-28 10:23:34 25 4
gpt4 key购买 nike

我正在开发一个旅游网站,该网站使用 XML API 来获取数据。

但是我对 XML 和输出还比较陌生。我一直在尝试使用 PHP 输出测试 XML 文件,但目前最远的 iv 只能输出几条记录。

正如问题所述,我需要知道哪种技术最适合该项目。下面 iv 包括一些需要考虑的要点。

  • 该网站将是一个大型、高流量的网站(expedia/last 分钟大小)
  • 我的技能是 PHP(中级/高级技能)和 Javascript(中级/高级技能)

下面是 API 输出的 XML 示例:

<?xml version="1.0"?>
<response method="###" success="Y">
<errors>
</errors>
<request>
<auth password="test" username="test" />
<method action="###" sitename="###" />
</request>
<results>
<line id="6" logourl="###" name="Line 1" smalllogourl="###">
<ships>
<ship id="16" name="Ship 1" />
<ship id="453" name="Ship 2" />
<ship id="468" name="Ship 3" />
<ship id="356" name="Ship 4" />
</ships>
</line>
<line id="63" logourl="###" name="Line 2" smalllogourl="###">
<ships>
<ship id="492" name="Ship 1" />
<ship id="454" name="Ship 2" />
<ship id="455" name="Ship 3" />
<ship id="421" name="Ship 4" />
<ship id="401" name="Ship 5" />
<ship id="404" name="Ship 6" />
<ship id="405" name="Ship 7" />
<ship id="406" name="Ship 8" />
<ship id="407" name="Ship 9" />
<ship id="408" name="Ship 10" />
</ships>
</line>
<line id="41" logourl="###">
<ships>
<ship id="229" name="Ship 1" />
<ship id="230" name="Ship 2" />
<ship id="231" name="Ship 3" />
<ship id="445" name="Ship 4" />
<ship id="570" name="Ship 5" />
<ship id="571" name="Ship 6" />
</ships>
</line>
</results>
</response>

如果可能的话,在建议哪种技术最适合该项目时,如果您可以提供一些入门指南或任何信息,我们将非常感激。

感谢您花时间阅读本文。

最佳答案

XSLT 非常有效,并且受到 PHP 支持。它使用此 XSLT 脚本来输出 XML 文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>Test</title>
</head>
<body>
<h1>User: <xsl:value-of select="//request/auth/@username"/></h1>
<xsl:apply-templates select="//results/line"/>
</body>
</html>
</xsl:template>
<xsl:template match="line">
<div>
<h3>Line ID: <xsl:value-of select="@id"/></h3>
<xsl:apply-templates select="./ships/ship"/>
</div>
</xsl:template>
<xsl:template match="ship">
<div>
<xsl:value-of select="@id"/>
<xsl:text> - </xsl:text>
<xsl:value-of select="@name"/>
</div>
</xsl:template>
</xsl:stylesheet>

要针对您的文件运行脚本,只需使用 3 行 PHP 代码:

<?php
$proc=new XsltProcessor;
$proc->importStylesheet(DOMDocument::load("test.xsl")); //load script
echo $proc->transformToXML(DOMDocument::load("test.xml")); //load your file
?>

您甚至可以在浏览器中尝试此转换,而无需任何 PHP 添加此内容

作为 XML 文件中的第二行,并在 Firefox 或 IE 中打开 XML 文件,并将 XSL 文件放在同一文件夹中。
更改此中的第三个 PHP 行
$proc->transformToUri(DOMDocument::load("test.xml"),"test.html");
将输出保存为静态文件。

这里建议一些好的建议:
https://stackoverflow.com/questions/339930/any-good-xslt-tutorial-book-blog-site-online

关于php - XML 输出 - PHP、JS 与其他什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4946833/

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