Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [xml] xpath
grzegorz_g
post
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


próbuje zastosować xpath do moje pliku xml:

  1.  
  2. <all>
  3. <RO>
  4. <Sport>Tennis</Sport>
  5. <EventID>425342</EventID>
  6. </RO>
  7. <RO>
  8. <Sport>Soccer</Sport>
  9. <EventID>425341</EventID>
  10. </RO>
  11. <RO>
  12. <Sport>Soccer</Sport>
  13. <EventID>425348</EventID>
  14. </RO><RO>
  15. <Sport>Tennis</Sport>
  16. <EventID>425347</EventID>
  17. </RO><RO>
  18. <Sport>Soccer</Sport>
  19. <EventID>425349</EventID>
  20. </RO>
  21. </all>



potrafię wyciągnac za pomocą xpath tylko elementy <RO> gdzie <Sport>="Soccer" ale nie wiem jak pobrać dla tych odszukanych elementów ten drugi element <EventID>.

teraz mam takie coś:

  1.  
  2. $doc = new DOMDocument;
  3. $doc->preserveWhiteSpace = false;
  4. $doc->Load('plik_z_danymi.xml');
  5. $xpath = new DOMXPath($doc);
  6.  
  7.  
  8. $query = '//RO/Sport[. = "Soccer"]';
  9.  
  10.  
  11. $entries = $xpath->query($query);
  12. foreach ($entries as $entry) {
  13.  
  14. echo $entry->nodeValue."<br />";
  15.  
  16. }
  17.  



teraz dostaje listę : Soccer, Soccer, Soccer a zależy mi na liście tych <EventID>




--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Musisz zapytanie nieco zmienić...
//RO[Sport = Soccer]/EventID
Co można czytać jako... Wszystkie elementy <EventID> które są dzieckiem elementu <RO>, a który dodatkowo zawiera przynajmniej jeden element <Sport> o wartości Soccer.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 00:41