我正在尝试让以下内容工作,但我得到的结果是一个空数组。使用cURL我收到了一个XML结果,我尝试使用xpath访问它。
在阅读了php.net以及其他网站上的示例之后,我想出了下面的PHP代码,但是我找到的所有示例都使用了一个只有一个url的非常基本的xml文件,whist我有两个url。我假设我必须使用最后一个url,因为那是绑定内容的那个。
<?PHP
function download_page($path)
{
$postData = 'requestXml=<bericht>
<authenticatie>
<naam>XXXXX</naam>
<wachtwoord>XXXXX</wachtwoord>
<berichtsoort>SB-RDW-ADVANCED</berichtsoort>
</authenticatie>
<parameters>
<kenteken>42pzks</kenteken>
</parameters>
</bericht>';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $path);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 300);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
$retValue = curl_exec($ch);
curl_close($ch);
return $retValue;
}
$sXML = download_page('https://acceptatie-interdata.vwe.nl/DataAanvraag.asmx/standaardDataRequest');
$oXML = new SimpleXMLElement($sXML);
$oXML->registerXPathNamespace('c', 'http://www.xmlmode.nl/interdata/rdw');
$result = $oXML->xpath('//c:handelsbenaming');
echo "<pre>";
print_r($result);
echo "</pre>";
?>
XML具有以下结果
<antwoordbericht xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<aanvraag>
<bericht>
<authenticatie>
<naam>XXX</naam>
<wachtwoord>XXX</wachtwoord>
<berichtsoort>SB-RDW-ADVANCED</berichtsoort>
</authenticatie>
<parameters>
<kenteken>42pzks</kenteken>
</parameters>
</bericht>
</aanvraag>
<resultaat>
<code>00</code>
<omschrijving>Ok</omschrijving>
<interdataReferentie>985933</interdataReferentie>
</resultaat>
<rubrieken>
<rdwInfoAdvanced xsi:type="rdw:rdwInfoAdvancedTypeV4" xmlns:rdw="http://www.xmlmode.nl/interdata/rdw">
<rdw:kenteken>42PZKS</rdw:kenteken>
<rdw:isMeldCodeCorrect>false</rdw:isMeldCodeCorrect>
<rdw:kentekenSignaal xsi:nil="true" />
<rdw:merk code="BMWP">bmw</rdw:merk>
<rdw:handelsbenaming>5ER REIHE; 525D TOURING AUT.</rdw:handelsbenaming>
<rdw:voertuigsoort>P</rdw:voertuigsoort>
<rdw:brandstof1 code="D">diesel</rdw:brandstof1>
<rdw:brandstof2 xsi:nil="true" />
<rdw:kleur1 code="07">grijs</rdw:kleur1>
<rdw:kleur2 code="99">niet van toepassing</rdw:kleur2>
<rdw:aantalZitplaatsen>5</rdw:aantalZitplaatsen>
<rdw:aantalStaanplaatsen>0</rdw:aantalStaanplaatsen>
<rdw:datumEersteToelatingInternationaal>2005-03-04</rdw:datumEersteToelatingInternationaal>
<rdw:datumEersteToelatingNationaal>2005-03-04</rdw:datumEersteToelatingNationaal>
<rdw:datumAansprakelijkheid>2010-02-23</rdw:datumAansprakelijkheid>
<rdw:datumVervalApk>2013-12-31</rdw:datumVervalApk>
<rdw:aantalCilinders>6</rdw:aantalCilinders>
<rdw:cilinderinhoud>2497</rdw:cilinderinhoud>
<rdw:massaLeegVoertuig>1660</rdw:massaLeegVoertuig>
<rdw:laadvermogen>0</rdw:laadvermogen>
<rdw:maximumMassa>2285</rdw:maximumMassa>
<rdw:massaRijklaar>1760</rdw:massaRijklaar>
<rdw:maximumMassaOngeremd>750</rdw:maximumMassaOngeremd>
<rdw:maximumMassaGeremd>2000</rdw:maximumMassaGeremd>
<rdw:maximumMassaOpleggerGeremd>0</rdw:maximumMassaOpleggerGeremd>
<rdw:maximumMassaAutonoomGeremd>0</rdw:maximumMassaAutonoomGeremd>
<rdw:maximumMassaMiddenasGeremd>0</rdw:maximumMassaMiddenasGeremd>
<rdw:parallelImport>false</rdw:parallelImport>
<rdw:uitvoeringsVolgnummer>22500</rdw:uitvoeringsVolgnummer>
<rdw:aantalDeuren>4</rdw:aantalDeuren>
<rdw:inrichting code="44">stationwagen</rdw:inrichting>
<rdw:voertuigClassificatie code="01">personenauto</rdw:voertuigClassificatie>
<rdw:aantalWielen>4</rdw:aantalWielen>
<rdw:vermogenKw>130</rdw:vermogenKw>
<rdw:vermogenBromfiets xsi:nil="true" />
<rdw:maximaleConstructiesnelheid>0</rdw:maximaleConstructiesnelheid>
<rdw:emissieCode>R</rdw:emissieCode>
<rdw:g3Installatie>false</rdw:g3Installatie>
<rdw:bpm>19775</rdw:bpm>
<rdw:verplichtingennemer>false</rdw:verplichtingennemer>
<rdw:wamVerzekerd>true</rdw:wamVerzekerd>
<rdw:wielbasis>288</rdw:wielbasis>
<rdw:motorcode>256D2</rdw:motorcode>
<rdw:catalogusPrijs xsi:nil="true" />
<rdw:isTaxi>false</rdw:isTaxi>
</rdwInfoAdvanced>
</rubrieken>
在应用simplexml元素之前我收到的结果是:
<antwoordbericht xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<aanvraag>
<bericht>
<authenticatie>
<naam>XXXX</naam>
<wachtwoord>XXXX</wachtwoord>
<berichtsoort>SB-RDW-ADVANCED</berichtsoort>
</authenticatie>
<parameters>
<kenteken>42pzks</kenteken>
</parameters>
</bericht>
</aanvraag>
<resultaat>
<code>00</code>
<omschrijving>Ok</omschrijving>
<interdataReferentie>987573</interdataReferentie>
</resultaat>
<rubrieken>
<rdwInfoAdvanced xsi:type="rdw:rdwInfoAdvancedTypeV4" xmlns:rdw="http://www.xmlmode.nl/interdata/rdw">
<rdw:kenteken>42PZKS</rdw:kenteken>
<rdw:isMeldCodeCorrect>false</rdw:isMeldCodeCorrect>
<rdw:kentekenSignaal xsi:nil="true" />
<rdw:merk code="BMWP">bmw</rdw:merk>
<rdw:handelsbenaming>5ER REIHE; 525D TOURING AUT.</rdw:handelsbenaming>
<rdw:voertuigsoort>P</rdw:voertuigsoort>
<rdw:brandstof1 code="D">diesel</rdw:brandstof1>
<rdw:brandstof2 xsi:nil="true" />
<rdw:kleur1 code="07">grijs</rdw:kleur1>
<rdw:kleur2 code="99">niet van toepassing</rdw:kleur2>
<rdw:aantalZitplaatsen>5</rdw:aantalZitplaatsen>
<rdw:aantalStaanplaatsen>0</rdw:aantalStaanplaatsen>
<rdw:datumEersteToelatingInternationaal>2005-03-04</rdw:datumEersteToelatingInternationaal>
<rdw:datumEersteToelatingNationaal>2005-03-04</rdw:datumEersteToelatingNationaal>
<rdw:datumAansprakelijkheid>2010-02-23</rdw:datumAansprakelijkheid>
<rdw:datumVervalApk>2013-12-31</rdw:datumVervalApk>
<rdw:aantalCilinders>6</rdw:aantalCilinders>
<rdw:cilinderinhoud>2497</rdw:cilinderinhoud>
<rdw:massaLeegVoertuig>1660</rdw:massaLeegVoertuig>
<rdw:laadvermogen>0</rdw:laadvermogen>
<rdw:maximumMassa>2285</rdw:maximumMassa>
<rdw:massaRijklaar>1760</rdw:massaRijklaar>
<rdw:maximumMassaOngeremd>750</rdw:maximumMassaOngeremd>
<rdw:maximumMassaGeremd>2000</rdw:maximumMassaGeremd>
<rdw:maximumMassaOpleggerGeremd>0</rdw:maximumMassaOpleggerGeremd>
<rdw:maximumMassaAutonoomGeremd>0</rdw:maximumMassaAutonoomGeremd>
<rdw:maximumMassaMiddenasGeremd>0</rdw:maximumMassaMiddenasGeremd>
<rdw:parallelImport>false</rdw:parallelImport>
<rdw:uitvoeringsVolgnummer>22500</rdw:uitvoeringsVolgnummer>
<rdw:aantalDeuren>4</rdw:aantalDeuren><
rdw:inrichting code="44">stationwagen</rdw:inrichting>
<rdw:voertuigClassificatie code="01">personenauto</rdw:voertuigClassificatie>
<rdw:aantalWielen>4</rdw:aantalWielen>
<rdw:vermogenKw>130</rdw:vermogenKw>
<rdw:vermogenBromfiets xsi:nil="true" />
<rdw:maximaleConstructiesnelheid>0</rdw:maximaleConstructiesnelheid>
<rdw:emissieCode>R</rdw:emissieCode>
<rdw:g3Installatie>false</rdw:g3Installatie>
<rdw:bpm>19775</rdw:bpm>
<rdw:verplichtingennemer>false</rdw:verplichtingennemer>
<rdw:wamVerzekerd>true</rdw:wamVerzekerd>
<rdw:wielbasis>288</rdw:wielbasis>
<rdw:motorcode>256D2</rdw:motorcode>
<rdw:catalogusPrijs xsi:nil="true" />
<rdw:isTaxi>false</rdw:isTaxi>
</rdwInfoAdvanced>
</rubrieken>