显示xml文件的数据

时间:2011-05-11 20:20:08

标签: php xml

我想从pairs.xml文件中显示最便宜的3对, 现在我很困惑如何使用它的条件。可以任何人帮助我

pairs.xml ------------

<pairs>
    <pair>
        <name>cups</name>
        <price>50</price>
    </pair>
    <pair>
        <name>mugs</name>
        <price>60</price>
    </pair>
    <pair>
        <name>plates</name>
        <price>40</price>
    </pair>
    <pair>
        <name>spoons</name>
        <price>10</price>
    </pair>
</pairs>

pairs.php ----------

$xmlFile = "pairs.xml";
$doc = DOMDocument::load($xmlFile);
$pair = $doc->getElementsByTagName("pair");
echo "<table border=1><tr><th>Name</th><th>Price</th></tr>";
foreach ($pair as $node) {
    $name = $node->getElementsByTagName("name");
    $name = $name->item(0)->nodeValue;
    $price = $node->getElementsByTagName("price");
    $price = $price->item(0)->nodeValue;

    if ()
        echo "<tr><td>{$name}</td><td>{$price}</td><tr>";
}  

2 个答案:

答案 0 :(得分:0)

$pairs = array();
foreach($pair as $node)
{
    $name = $node->getElementsByTagName("name")->item(0)->nodeValue;
    $price = $node->getElementsByTagName("price")->item(0)->nodeValue;
    $pairs[$price] = $name;
}
ksort($pairs, SORT_NUMERIC);
$i = 0;
foreach($pairs AS $p => $n)
{
     echo("<tr><td>{$n}</td><td>{$p}</td></tr>");
     $i++;
     if( $i == 3 )
          break;
}

答案 1 :(得分:0)

我认为this answer可能会让你走上正轨。