Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] - Wbudowana obsluga XML'a ?
Forum PHP.pl > Forum > Przedszkole
ambrylun
Cześć, zacząłem właśnie pisanie skryptu odczytujacego zawartość pliku XML i zauważyłem, że odczytuje mi on wartości jedynie pomiędzy węzłami tzn. Wygląda to tak:

  1.  
  2. <?xml version = "1.0" encoding = "UTF-8"?>
  3. <uzytkownicy>
  4. <uzytkownik>
  5. <nazwa>Nazwaaaa</nazwa>
  6. <haslo>haslo123456</haslo>
  7. </uzytkownik>
  8. </uzytkownicy>
  9.  


I skrypt odczytuje mi jedynie 'Nazwaaaa' oraz 'haslo123456'

a moj skrypt wyglada tak :

  1. <?php
  2.  
  3. $uzytkownicy = fopen('/usr/uzytkownicy/uzytkownicy.xml','r');
  4. while((!feof($uzytkownicy)))
  5. {
  6. $linia = fgetc($uzytkownicy);
  7. echo "$linia";
  8. }
  9. fclose($uzytkownicy);
  10. ?>


Czy php 5 ma jakas wbudowana obsluge XML'a questionmark.gif
trueblue
Czy to Twój cały skrypt? Proponuję podejrzeć źródło strony.

Co chcesz odczytać więcej? XML to XML, "podróżujesz" po węzłach.
http://php.net/manual/en/book.simplexml.php
ambrylun
Myślałem, że wyświetlą mi się też nazwy węzłów po prostu
trueblue
Ale co właściwie chcesz zrobić?
Jeśli wyświetlić całą zawartość jako XML, ustal nagłówek w PHP jako XML i wydrukuj na stronie.
Jeśli ma to być wyświetlone jako tekst, to pobierz całość, użyj htmlentities i wydrukuj na stronie.
ambrylun
No chciałem żeby odczytywało mi najpierw co jest w węźle uzytkownik a potem w pierwszym węźle haslo
maviozo
Może Tobie chodzi o
  1. $xml = simplexml_load_file('/usr/uzytkownicy/uzytkownicy.xml');
  2. //sprawdzenie obiektu
  3. print_r($xml);
Bo Twój skrypt traktuje tego XMLa jak zwykły tekst. W w/w przykładzie dostajesz się $xml->uzytkownicy->uzytkownik[0]->nazwa;
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.