Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przestrzenie nazw SimpleXML
macko90
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 17.08.2011

Ostrzeżenie: (0%)
-----


Jako że jestem tutaj nowy, pragnę się przywitać (IMG:style_emoticons/default/wink.gif)

Mam problem z przestrzeniami nazw w XML, mam taki pliczek

  1. <pasaz:Envelope xmlns:pasaz="http://schemas.xmlsoap.org/soap/envelope/">
  2. <pasaz:Body>
  3. <loadOffers xmlns="urn:ExportB2B">
  4. <offers>
  5. <offer>
  6. <kod>cos tam</kod>


Nie mam pojęcia jak dobrać się do "cos tam"

  1. <?php
  2.  
  3. $xml = simplexml_load_file('plik.xml');
  4.  
  5. foreach ($xml->Envelope->Body->loadOffers->offers->offer as $hs)
  6. {
  7.  
  8. echo $hs->kod;
  9.  
  10. }
  11.  
  12. ?>


Co robię źle?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Noidea
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. $xmlStr = '<root xmlns:pasaz="http://jakis.adres.url">
  4. <pasaz:bar/>
  5.  
  6. <pasaz:b>
  7. <a>cos tam</a>
  8. <b>cos tam2</b>
  9. <c>cos tam3</c>
  10. </pasaz:b>
  11.  
  12. <foo/>
  13. </root>';
  14.  
  15. $xml = simplexml_load_string( $xmlStr );
  16. $b = $xml->children( "http://jakis.adres.url" )->b->children();
  17. var_dump( $b );
  18.  
  19. echo "Lub przy użyciu XPath:<br>";
  20.  
  21. $xml->registerXPathNamespace( "pasaz", "http://jakis.adres.url" );
  22. $b = $xml->xpath( "//pasaz:b" );
  23. var_dump( $b[0] );
  24.  
  25. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 14:57