|
PORADY - tysiące sprawdzonych rozwiązań dla programistów i webmasterów aktualizacja porady: 2005-09-19 18:46:24
[PHP][XML] Jak przetworzyć złożone dokumenty XML do postaci tablicy w PHP?
PROBLEM
Chcesz przetworzyć dokument XML do postaci tablicy, do której łatwo się odwołać w celu pobrania wartości zawartych w znacznikach.
ROZWIĄZANIEnoselect
Przetwarzanie dokumentów XML to kluczowe zagadnienie podczas obróbki danych pochodzących z różnych źródeł. Aby ułatwić sobie sprawę odwoływania się do poszczególnych wartości znajdujących się wewnątrz struktury XML, możesz napisać parser, który zamieni dokument XML na prostą tablicę. Tablica jest łatwa do ogarnięcia...
Załóżmy, że nasz plik ksiazki.xml zawiera następujące dane:
<?xml version='1.0' encoding='iso-8859-2'?>
<ksiazki>
<ksiazka id="8">
<autorzy>
<autor>Scott Kelby</autor>
<autor>Felix Nelson</autor>
</autorzy>
<tytul>Photoshop7 skuteczne rozwiązania</tytul>
<opis>Porady i triki dla Adobe Photoshop</opis>
<wydawnictwo>Helion</wydawnictwo>
</ksiazka>
<ksiazka id="13" uwaga="jest trochę zniszczona...">
<autorzy>
<autor>Wiktor Suworow</autor>
</autorzy>
<tytul>Specnaz</tytul>
<opis>Historia sił specjalnych Armii Radzieckiej</opis>
</ksiazka>
<ksiazka id="27">
<autorzy>
<autor>Antony Smith</autor>
</autorzy>
<tytul>Umysł</tytul>
</ksiazka>
</ksiazki>
Po przekształceniu na postać tablicy, do każdej wartości w pliku możesz odwołać się, jak do normalnej tablicy:
$t["ksiazki"][0]["ksiazka"][0]["autorzy"][0]["autor"][0]="Scott Kelby";
$t["ksiazki"][0]["ksiazka"][0]["autorzy"][0]["autor"][1]="Felix Nelson";
$t["ksiazki"][0]["ksiazka"][0]["tytul"][0]="Photoshop7 skuteczne...";
$t["ksiazki"][0]["ksiazka"][0]["opis"][0]="Porady i triki dla...";
$t["ksiazki"][0]["ksiazka"][0]["wydawnictwo"][0]="Helion";
$t["ksiazki"][0]["ksiazka"][1]["autorzy"][0]["autor"][0]="Wiktor Suworow";
$t["ksiazki"][0]["ksiazka"][1]["tytul"][0]="Specnaz";
$t["ksiazki"][0]["ksiazka"][1]["opis"][0]="Historia sił specjalnych...";
$t["ksiazki"][0]["ksiazka"][2]["autorzy"][0]["autor"][0]="Antony Smith";
$t["ksiazki"][0]["ksiazka"][2]["tytul"][0]="Umysł";
Oprócz indeksów bedących elementami XML, używam też indeksów liczbowych, aby rozróżnić np. różnych autorów w jednym rekordzie lub wiele książek wewnątrz struktury. Mogę w ten sposób odwołać się do dowolnego miejsca w strukturze XML.
Takie rozwiązanie daje niesamowite możliwości. Aby wypisać tylko wszystkich autorów dla wszystkich książek wystarczy wykonać dwie pętle:
for($i=0;$i<count($t["ksiazki"][0]["ksiazka"]);$i++) {
for($j=0;$j<count($t["ksiazki"][0]["ksiazka"][$i]["autorzy"][0]["autor"]);
$j++) {
echo $t["ksiazki"][0]["ksiazka"][$i]["autorzy"][0]["autor"][$j];
echo "<br />";
}
}
Napiszmy taki parser, z pewnością nie raz uratuje Ci cały dzień pracy i zmieni Twoje podejście do zagmatwanego XMLa.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UWAGA! To tylko fragment strony! Całą zobaczysz po opłaceniu abonamentu!
|
ZALOGUJ SIĘ I ZAMÓW ABONAMENT ABY KORZYSTAĆ Z TEJ CZĘŚCI SERWISU
|
|
|
Dostęp do oglądanej strony jest płatny.
Całą zawartość strony zobaczysz
po zalogowaniu się i opłaceniu abonamentu.
Jeżeli nie masz konta użytkownika, założ konto!
|
|
Oto garść powodów, dla których warto założyć konto użytkownika:
Założenie konta użytkownika jest proste i bezpłatne.
Od razu zobaczysz kilka wybranych porad gratis.
Po opłaceniu abonamentu otrzymasz dostęp do wszystkich porad.
Zaprenumerujesz przydatny newsletter z poradami i nowościami.
Będziesz mieć dostęp do własnej, wygodnej aktówki i profilu.
Zyskasz możliwość korzystania z różnych promocji i upustów dla klientów serwisu.
Oto garść powodów, dla których warto zamówić abonament:
W jednym miejscu znajdziesz tysiące fachowych porad, kursy, encyklopedię pojęć oraz przydatne narzędzia, dzięki czemu nie tracisz czasu, impulsów telefonicznych i pieniędzy na pozyskiwanie wiedzy. Tutaj dostaniesz gotowe i sprawdzone rozwiązania problemów, z którymi spotykasz się w praktyce.
Dzięki poradom dowiesz się, w jaki sposób wykorzystać najnowsze technologie, aby tworzyć profesjonalne serwisy i rozwiązania. Doradzę Ci, jak skonstruować i wypromować swoje strony, zwiększyć oglądalność, pozyskać klientów i rozwinąć biznes w Internecie, który będzie przynosił zyski!
Kody programów i skrypty działają natychmiast po wstawieniu ich na strony WWW. Tylko tutaj znajdziesz tak wiele unikatowych algorytmów, autorskich pomysłów i przydatnych artykułów. Dowiesz się, jak zapewnić bezpieczeństwo, zwiększyć wydajność oprogramowania i poprawić jakość serwisów WWW i baz danych.
Od kilkunastu lat zajmuję się zawodowo programowaniem oraz tworzeniem stron WWW, co gwarantuje bardzo wysoką jakość i skuteczność opisywanych rozwiązań. Potwierdzają to opinie użytkowników. Możesz też liczyć na pomoc i wsparcie przy wdrażaniu porad na własnej stronie.
Nie musisz wydawać kilku tysięcy złotych na programistów, konsultantów, promocję czy też reklamę swojej witryny. Te same efekty osiągniesz czytając porady i stosując się do konkretnej wiedzy, która podana jest w sposób przyjazny nawet dla laika.
Nigdzie nie kupisz książek, czasopism i publikacji, które w cenie abonamentu dostarczą Ci tak wiele gotowych rozwiązań. Na żadnych szkoleniach i kursach nie zdobędziesz tylu praktycznych umiejętności i wiadomości. Dzięki zdobytej wiedzy znacznie podniesiesz swoje kwalifikacje i znajdziesz o wiele lepszą pracę.
Z serwisu korzystają zarówno początkujący webmasterzy, jak i największe polskie firmy, banki, dostawcy usług internetowych, wykładowcy, webdeweloperzy oraz agencje interaktywne. To potwierdzenie jakości i wysokiego poziomu informacji - sprawdzanej i weryfikowanej w praktyce przez wielu niezależnych klientów.
Zamawiając abonament pomagasz rozwijać serwis, który będzie Ci służyć jeszcze większą ilością porad i rozwiązań, lepszym wsparciem technicznym oraz unikatowymi, fachowymi publikacjami, których realizacja wymaga ogromnych nakładów czasu i pracy.
Skorzystasz z Programu Partnerskiego - biorąc w nim udział możesz zapewnić sobie BEZPŁATNY dostęp do serwisu z poradami!
Słowa kluczowe dla porady skrypt PHP, skrypty PHP, porady, porady php, programowanie php, kurs php, parser, parsować
|