вложенный XML-документ в Simplexml-документе - PullRequest
0 голосов
/ 25 октября 2009

У меня проблема при использовании simplexml для чтения XML-документа, который я получаю после вызова веб-службы.

Считывание данных возможно, однако один узел с именем UserArea содержит вложенный XML-документ, содержащий пространства имен.

С этот вопрос о SO Я смотрел, как обращаться с дочерними узлами. Однако, когда я вызываю узел, в котором находится этот вложенный XML, я получаю нулевое значение.

Данные выглядят так:

<UserArea>

 <rm:EngineVersion>4.2.0.62</rm:EngineVersion>

 <rm:DocumentFormat>305</rm:DocumentFormat>

 <rm:Industry>AUT</rm:Industry>

 <rm:Department>GEN</rm:Department>

 <rm:HighestDegree year="2004" major="COMPUTER PROGRAMMING">BACHELORS</rm:HighestDegree>

 <rm:ExperienceSummary>

  <rm:Experience>

    <rm:ExperienceKind>Summary</rm:ExperienceKind>

    <rm:Years>11</rm:Years>

    <rm:Detail>A total of 11 years of work experience.</rm:Detail>

  </rm:Experience>

  <rm:Experience>

    <rm:ExperienceKind>HighestIndustry</rm:ExperienceKind>

    <rm:Years>5</rm:Years>

    <rm:Industry>AUT</rm:Industry>

    <rm:Detail>Highest industry-related experience is 5 years in automotive      </rm:Detail>

  </rm:Experience>
 </rm:ExperienceSummary>
</UserArea>

У меня нет идей, потому что код:

foreach($myObject->UserArea->children as $userAreaXML){

   foreach($userAreaXML->ExperianceSummary as $summary){
      echo $summary->Detail;
   } 
}

просто не работает.

Ответы [ 2 ]

1 голос
/ 25 октября 2009

Возможно, вы захотите прочитать http://www.sitepoint.com/blogs/2005/10/20/simplexml-and-namespaces/ .. Не может быть объяснено намного яснее.

0 голосов
/ 25 октября 2009

Этот код распечатает детали

$experiences = $myObject->ExperienceSummary->Experience;

foreach($experiences as $experience) {
 echo $experience->Detail . "<br>";
}
...