根据属性值选择XML元素

时间:2013-02-15 01:41:45

标签: php xml parsing simplexml

我有一个Web应用程序(在PHP中),它根据属性的值选择XML元素的数据。

但是,我在尝试实际操作时遇到了麻烦。 这是我正在使用的XML:

    <meta> <!-- Data about data -->

        <genre genre_name="edm">
            <amount_of_bands>3</amount_of_bands>
        /genre>

        <genre genre_name="pop">
            <amount_of_bands>3</amount_of_bands>
        </genre>

        <genre genre_name="hip-hop">
            <amount_of_bands>1</amount_of_bands>
        </genre>

    </meta>

我正在尝试访问代码中的数字。 我尝试过使用$xml_root->meta->genre['genre_name = edm']->amount_of_bands;(使用SimpleXML)),并没有产生任何结果。我尝试过研究,但我仍然没有得到任何结果。

编辑,YO - 我通过将<genre genre_name="hip-hop">替换为<genre_name>hip-hop</genre_name>元素中的额外<genre>...</genre>元素来解决我的问题。更容易阅读,维护和编码。

感谢您的回答,无论如何。

1 个答案:

答案 0 :(得分:0)

检查以下示例#1: http://php.net/manual/en/simplexmlelement.attributes.php

不是回显数据,而是将属性列表推送到关联数组中,稍后您将可以参考该数组。

类似的问题: How to get the value of an attribute from XML file in PHP?