使用php explode从XML迭代数组

时间:2017-06-09 14:03:48

标签: php arrays xml

我无法在xml文件中获取歌曲类型。首先,我使用

加载XML文件

$xmlDoc = file_get_contents('/songs.xml');

将文件加载到字符串后,我使用

将它们分解为数组

$songs = explode("<song>", $xmlDoc);

我尝试使用foreach循环来逐步浏览每首歌曲然后爆炸类型,但这并不仅仅给出了它包含Rock</type>的类型。

songs.xml

<songs>
    <song>
        <title>Paradise City</title>
        <artist>Guns & Roses</artist>
        <type>Rock</type>
    </song>
    <song>
        <title>One Love</title>
        <artist>Bob Marley</artist>
        <type>Reggae</type>
    </song>
    <song>
        <title>Sweet Child Mine</title>
        <artist>Guns & Roses</artist>
        <type>rock</type>
    </song>
</songs>

1 个答案:

答案 0 :(得分:0)

您需要使用SimpleXMLElement或DomDocument

来自W3C的示例:https://www.w3schools.com/php/php_xml_simplexml_read.asp

$xml=simplexml_load_string($myXMLData) or die("Error: Cannot create object");
print_r($xml);
SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

之后,您可以解析&#34; xml&#34;像一个数组。享受