Je ne peux pas sembler analyser mon xml aujourd'hui. Qu'est ce que j'ai mal fait? J'espère que quelqu'un peut me diriger vers une meilleure solution/travail.php DOM xml analyse syntaxique geon awry
Je veux analyser un fichier xml ligne de bus qui ressemble à ceci:
<buses>
<bus>
<num>12</num>
<stime>05:00</stime>
<etime>22:00</etime>
<freq>?</freq>
<route>
<stop>Eonyang Bus Terminal</stop>
<stop>Chuk Hyub</stop>
<stop>Eonyang Bolim Hospital</stop>
<stop>Samnammyeong Residential Center</stop>
<stop>SinAn</stop>
</route>
</bus>
<bus>
<num>13</num>
<stime>?</stime>
<etime>?</etime>
<freq>?</freq>
<route>
<stop>KTX Ulsan Station</stop>
<stop>Driving Hagwon</stop>
<stop>Jayeon Science High School</stop>
<stop>Eonyang Bus Stop</stop>
<stop>Bolim Hospital</stop>
<stop>Daewon Green Apt.</stop>
</route>
Basé sur l'entrée d'utilisateur d'origine et de destination, je veux chercher dans la liste des arrêts pour trouver le bus ou les bus désirés, mais simplement analyser cette liste ne fonctionne pas.
<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("buses-new.xml");
$buses=$xmlDoc->getElementsByTagName('bus');
for($i=0; $i<($buses->length); $i++) {
$route=$buses->item($i)->getElementsByTagName('route');
$busnum=$buses->item($i)->getElementsByTagName('num');
foreach($route->childNodes as $stop) {
$loc = $stop->nodeValue;
if (stristr($loc,$orig)) {
// found a bus with origin
$origins[$ocount]= $i;
$ocount++;
}
if (stristr($loc,$dest)) {
// found a bus with destination
$destination[$dcount] = $i;
$dcount++;
}
} // for all stops
} // for all buses
Je reçois une erreur ---- foreach ($ route-> childNodes comme $ stop) - dit en argument non valide. Quelle est la bonne façon d'analyser une liste indéterminée de childnodes de chaque route?
merci, cela fonctionne. – Martin