使用PHP进行XML解析

时间:2011-06-21 06:42:10

标签: php xml parsing

我有一个.out文件,其中包含xml这样的内容。

<header stub>
    <article type="audio">
        <addedDate>2010-03-11 05:11:57</addedDate>
        <thumbnail>http://fgsdfff/4588/thumbnail_9.jpg</thumbnail>
        <asset="blarga.mp3" addedDate="2009-01-07 01:48:37">
            <size>3289048</size>
            <duration>206000</duration>
            <mime_type>audio/mpeg</mime_type>
        </asset>
    </article>
</footer stub>
  1. 我必须分别在xml的开头和末尾添加<?xml version="1.0"?></xml>
  2. 我必须分别用<header stub></footer stub>标记替换<channel></channel>
  3. 您可能已经注意到<asset>标记中的XML格式不正确。它必须像<asset url="blarga.mp3" addedDate="2009-01-07 01:48:37">。如何添加url属性?
  4. 在缩略图标签中,我必须从jpg的名称中删除_9。
  5. 最后,我必须将.out转换为.xml文件。

    请帮我解决这些问题

2 个答案:

答案 0 :(得分:1)

您可以使用DOMDocument课程。

可以找到其使用示例here

答案 1 :(得分:1)

$content = file_get_content OR mysql_query;//"YOUR XML CONTENT FROM FILE OR MYSQL";
$content = "<?xml version="1.0"?>" . $content . "</xml>";
$content = str_replace("<header stub>", "<channel>", $content);
$content = str_replace("</footer stub>", "</channel>", $content);
$content = str_replace("<asset=", "<asset url=", $content);
$content = str_replace("thumbnail_9.jpg", "thumbnail.jpg", $content);