这是我的简单 XML 文件:-
This is my simple XML file:-
<products>
<value>
<value>
<region_timezone>
<value>1</value>
</region_timezone>
<registrationstatus>
<value>2</value>
</registrationstatus>
<eventstatus>
<value>2</value>
</eventstatus>
<dist_activity>
<value>5</value>
<value>10068</value>
<value>10070</value>
</dist_activity>
<reg_str_dt>
<value>2013-01-14 20:35:00</value>
</reg_str_dt>
<reg_end_dt>
<value>2013-01-14 20:35:00</value>
</reg_end_dt>
<product_id>1</product_id>
<tab_id>351</tab_id>
<tab_name>test1</tab_name>
</value>
</value>
<value>
<value>
<region_timezone>
<value>1</value>
</region_timezone>
<registrationstatus>
<value>2</value>
</registrationstatus>
<eventstatus>
<value>2</value>
</eventstatus>
<dist_activity>
<value>5</value>
<value>10069</value>
<value>10070</value>
</dist_activity>
<reg_str_dt>
<value>2013-02-14 20:39:00</value>
</reg_str_dt>
<reg_end_dt>
<value>2013-02-14 20:39:00</value>
</reg_end_dt>
<product_id>2</product_id>
<tab_id>352</tab_id>
<tab_name>test2</tab_name>
</value>
</value>
</products>
我想将它们转换成这样:-
I want to convert them to this:-
<products>
<value>
<value>
<product_id value="1">
<tab_id value="351">
<tab_name value="test1"></tab_name>
<region_timezone value="1">
</region_timezone>
<registrationstatus value="2">
</registrationstatus>
<eventstatus value="2">
</eventstatus>
<dist_activity value="5,10068,10070">
</dist_activity>
<reg_str_dt value="2013-01-14 20:35:00">
</reg_str_dt>
<reg_end_dt value="2013-01-14 20:35:00">
</reg_end_dt>
</tab_id>
</product_id>
</value>
</value>
<value>
<value>
<product_id value="2">
<tab_id value="352">
<tab_name value="test2"></tab_name>
<region_timezone value="1">
</region_timezone>
<registrationstatus value="2">
</registrationstatus>
<eventstatus value="2">
</eventstatus>
<dist_activity value="5,10069,10070">
</dist_activity>
<reg_str_dt value="2013-02-14 20:39:00">
</reg_str_dt>
<reg_end_dt value="2013-02-14 20:39:00">
</reg_end_dt>
</tab_id>
</product_id>
</value>
</value>
</products>
有没有可能给我最好的重播
使用 PHP 代码是可能的,那么对我来说是最好的......我有一个 PHP 文件可以在 Sql 数据库中生成我的简单 Xml 文件...谢谢
Is It Possible Then Give Me Best Replay
It's Possible With Php Code Then Best For Me...
I Have One Php File Thats Generate My Simple Xml File In The Sql Database...
Thanks
应该这样做:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="value">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="products/value/value">
<product_id value="{product_id}">
<tab_id value="{tab_id}">
<tab_name value="{tab_name}" />
<xsl:apply-templates select="node()" />
</tab_id>
</product_id>
</xsl:template>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="self::*[value[not(*)]]"
mode="values" />
<xsl:apply-templates select="@* | node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="value[not(*)]" />
<xsl:template match="*" mode="values">
<xsl:attribute name="value">
<xsl:apply-templates select="value[not(*)]" mode="values"/>
</xsl:attribute>
</xsl:template>
<xsl:template match="value" mode="values">
<xsl:value-of select="concat(., ',')"/>
</xsl:template>
<xsl:template match="value[last()]" mode="values">
<xsl:value-of select="."/>
</xsl:template>
<xsl:template match="product_id | tab_id | tab_name" />
</xsl:stylesheet>
在您的示例输入上运行时,会产生:
When run on your sample input, this produces:
<products>
<product_id value="1">
<tab_id value="351">
<tab_name value="test1" />
<region_timezone value="1" />
<registrationstatus value="2" />
<eventstatus value="2" />
<dist_activity value="5,10068,10070" />
<reg_str_dt value="2013-01-14 20:35:00" />
<reg_end_dt value="2013-01-14 20:35:00" />
</tab_id>
</product_id>
<product_id value="2">
<tab_id value="352">
<tab_name value="test2" />
<region_timezone value="1" />
<registrationstatus value="2" />
<eventstatus value="2" />
<dist_activity value="5,10069,10070" />
<reg_str_dt value="2013-02-14 20:39:00" />
<reg_end_dt value="2013-02-14 20:39:00" />
</tab_id>
</product_id>
</products>
这篇关于将 XML 文件转换为属性 XML的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
在 SELECT(MYSQL/PHP) 中加入 2 个表Joining 2 tables in SELECT(MYSQL/PHP)(在 SELECT(MYSQL/PHP) 中加入 2 个表)
如何使<option selected=“selected">由How to make lt;option selected=quot;selectedquot;gt; set by MySQL and PHP?(如何使lt;option selected=“selectedgt;由 MySQL 和 PHP 设置?)
使用 PHP 中的数组自动填充选择框Auto populate a select box using an array in PHP(使用 PHP 中的数组自动填充选择框)
PHP SQL SELECT where like search item with multiple wordsPHP SQL SELECT where like search item with multiple words(PHP SQL SELECT where like search item with multiple words)
json_encode 从 MSSQL-SELECT 产生 JSON_ERROR_UTF8json_encode produce JSON_ERROR_UTF8 from MSSQL-SELECT(json_encode 从 MSSQL-SELECT 产生 JSON_ERROR_UTF8)
MySQL ORDER BY rand(),名称 ASCMySQL ORDER BY rand(), name ASC(MySQL ORDER BY rand(),名称 ASC)