2010-12-02 37 views
0

我试图让所有类别并将其推入我的array解析DOM文档,到目前为止我做这种方式,我的xml每个项目有几个类别。什么是这样做的好方法?RSS在PHP

<item> 
    <title>Submit</title> 
    <category>Foo</category> 
    <category>Bar</category> 
</item> 

感谢

+0

谢谢大家! – JoshReitch 2010-12-02 15:35:58

回答

3

这应有助于:

$doc = new DOMDocument(); 
$doc->load('myxml.xml'); 
$arr = array(); 
foreach ($doc->getElementsByTagName('item') as $node) { 
    $item = array ( 
     'title' => $node->getElementsByTagName('title')->item(0)->nodeValue, 
     'date' => array() 
    ); 

    foreach($node->getElementsByTagName('category') as $catNode) 
    { 
     $item['date'][] = $catNode->nodeValue; 
    } 

    $arr[] = $item; 
} 
  • 基督教
0

您需要嵌套的循环:

$doc = new DOMDocument(); 
$doc->load('myxml.xml'); 
$arr = array(); 

foreach ($doc->getElementsByTagName('item') as $itemNode) { 
    $items = array( 
     'title' => $itemNode->getElementsByTagName('title')->item(0)->nodeValue, 
     'date' => array() 
    ); 

    foreach ($itemNode->getElementsByTagName('category') as $categoryNode) { 
     $items['date'][] = $categoryNode->nodeValue; 
    } 

    $arr[] = $items; 
} 
+0

但是,这是否是arr []的一部分?我试图将它们推入我的arr [] – JoshReitch 2010-12-02 15:26:11