如何将解析后的数据转换为xml格式

时间:2015-07-07 12:10:38

标签: php html html-parsing

我想使用以下代码使用“简单的html dom解析器”解析HTML内容(网站):

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Parsing</title>
</head>
<body>
    <h1>Démonstration parsing </h1>
    <?php
    require_once 'simple_html_dom.php';
    $html = new simple_html_dom();
    $html->load_file('http://grafikart.fr/blog/');
    // echo $html->find('img',0)->getAttribute('src');
    /*foreach ($html->find('img') as $img) {
        echo $img->src . '<br/>';
    }*/
 foreach ($html->find('.posts') as $post){
     echo 'ARTICLE : '.$post->find('posts-short>p',0)->plaintext.'<br/>';
     echo 'Image de l\'article: '.$post->find('img',0)->src.'<br/>';         
 }
    ?>

</body>
</html>

一切正常,但我想将解析后的数据转换为xml格式。有人有想法吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用SimpleXML

这是一个简单的例子:

2

导致

<?php

    $test_array = array (
      'bla' => 'blub',
      'foo' => 'bar',
      'another_array' => array (
        'stack' => 'overflow',
      ),
    );

    $xml = new SimpleXMLElement('<root/>');
    array_walk_recursive($test_array, array ($xml, 'addChild'));
    print $xml->asXML();
?>

以下是(12)示例,其中 *<?xml version="1.0"?> <root> <blub>bla</blub> <bar>foo</bar> <overflow>stack</overflow> </root>* Simple HTML DOM 一起使用。