0

私は XML を初めて使用し、MarketRent を取得するのに苦労しています。特定の ID を持つすべての ILS_Unit をターゲットにして、MarketRent nodeValue を取得しようとしています。しかし、登録した名前空間がありますが、空白のページが表示されます。

私のPHPコード:

<?php
$doc = new DOMDocument;
$doc->preserveWhiteSpace = false;
$doc->load('http://mdoerrdev.com/xml/updates-mits.xml');

$xpath = new DOMXPath($doc);
$xpath->registerNamespace('MITS', "http://mdoerrdev.com/xml/updates-mits.xml");

$unitPrice = $xpath->evaluate("//ILS_Unit[@FloorplanId='550584']/Unit/MITS:Information/MITS:MarketRent");
    foreach($unitPrice as $up)  {
        var_dump($up);
    };
?>

入力 XML:

入力 XML が大きすぎるため、ここで見つけることができます: http://mdoerrdev.com/xml/updates-mits.xml

4

1 に答える 1

1

名前空間を登録する場合は、URI が XML のものと一致することを確認し、次のように変更します。

 $xpath->registerNamespace('MITS', "http://mdoerrdev.com/xml/updates-mits.xml");

 $xpath->registerNamespace('MITS', "http://www.mitsproject.org/namespace");
于 2013-09-25T14:17:33.567 に答える