Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][XML]Odczyt kodu HTML z pliku xml
Forum PHP.pl > Forum > Przedszkole
kubax33
  1. <?xml version="1.0" encoding="iso-8859-2"?>
  2. <PROJEKTY>
  3. <Projekt>
  4. <Kod>Nazwa nr 1</Kod>
  5. <Nazwa>Ulica 1/1</Nazwa>
  6. <Opis><p><strong>Jakiś opis</strong></p></Opis>
  7. <zamowienie>
  8. <produkt sztuk="3">Produkt 1</produkt>
  9. <produkt sztuk="1">Produkt 2</produkt>
  10. </zamowienie>
  11. </Projekt>
  12. <Projekt>
  13. <Kod>Nazwa nr 2</Kod>
  14. <Nazwa>Ulica 2/2</Nazwa>
  15. <Opis><p><strong>Jakiś opis</strong></p></Opis>
  16. <zamowienie>
  17. <produkt sztuk="10000">Produkt 1</produkt>
  18. <produkt sztuk="500">Produkt 3</produkt>
  19. <produkt sztuk="5">Produkt 4</produkt>
  20. </zamowienie>
  21. </Projekt>
  22. </PROJEKTY>


  1. <?php
  2.  
  3. $xml = simplexml_load_file('test.xml');
  4.  
  5. foreach($xml -> Projekt as $projekt)
  6. {
  7. echo 'Nazwa klienta: '.$projekt -> Kod.' Adres: '.$projekt -> Nazwa.' Opis: '.$projekt -> Opis.'<br/>';
  8. echo 'Szczegóły zamówienia: <br/>';
  9.  
  10. foreach($projekt -> zamowienie -> produkt as $produkt)
  11. {
  12. echo $produkt['sztuk'].' sztuk produktu o nazwie "'.$produkt.'"<br/>';
  13. }
  14.  
  15. echo '<hr/>';
  16. }
  17. ?>


Jeśli w pliku xml nie ma tagów html odczytuje poprawnie, ale jak odczytać zmienną jeśli znajduje się w niej kod html nie koniecznie w jednej lini
  1. <Opis>
  2. <p>
  3. <strong>Jakiś opis</strong>
  4. </p>
  5. </Opis>
emstawicki
W pliku XML użyj:
https://www.tutorialspoint.com/xml/xml_cdata_sections.htm
kubax33
Tylko, że struktura pliku jest stała. Jakieś inne rozwiązanie istnieje?
kapslokk
  1. $projekt->Opis->asXml()
i wywalić <Opis> </Opis> ?
kubax33
super działa. Problem jedynie jest kiedy opis ma znaki typu m2 lub znak średnicy, spacji np:
  1. ZAWARTOŚĆ OPISU: &nbsp;


Jeśli jest jeszcze jakieś rozwiązanie na to fajnie jeśli nie ma to jakoś sobie poradzę bo w tej chwili wysypuję się wszystko jeśli oprócz tagów html są też znaki specjalne jak wyżej np. spacja.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.