将 XML 内容转换为数组

Transforming XML content to array

作为 this post 的相反情况,如何使用 XSLT 将 XML 文档的内容转换为数组。

为此:

<Records>
    <item>value1</item>
    <item>value2</item>
    <item>value3</item>
    <item>value4</item>
    <item>value5</item>
</Records> 

想要的结果是这样的:

[value1, value2, value3, value4, value5]

有什么想法?

希望这对您有所帮助..

    <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xsl">
  <xsl:output method="text"/>
  <xsl:template match="/">
    <xsl:variable name="countItems" select="count(Records/item)"/>
    [<xsl:for-each select="Records/item">
      <xsl:value-of select="."/>
      <xsl:choose>
        <xsl:when test="position()=$countItems"/>
        <xsl:otherwise>,</xsl:otherwise>
      </xsl:choose>
    </xsl:for-each>]
  </xsl:template>
</xsl:stylesheet>

XSLT 1.0 可用于从源 xml 文件生成结果 xml、文本或 HTML 文件。 您可以从通过 XSLT

创建的文件中获取结果数据