Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]parsowanie pliku XML
Forum PHP.pl > Forum > Przedszkole
sweter
Mam taki plik XML:

Kod
<?xml version="1.0" encoding="utf-8"?>
<trips>
    <trip id="289171">
        <type>LAST</type>
        <offerid>5261</offerid>
        <length>7</length>
        <startdate>2009-10-17</startdate>
        <enddate>2009-10-24</enddate>
        <transport>
            
            <departure id="13459">
                <type>flight</type>
                <flightno>6544</flightno>
                <airline>KBR</airline>
                <departure_date>2009-10-17</departure_date>
                <departure_time>09:45</departure_time>
                <arrival_date>2009-10-17</arrival_date>
                <arrival_time>15:05</arrival_time>
                <departurenode>WAW</departurenode>
                <arrivalnode>HRG</arrivalnode>    
            </departure>
            
            <departure id="13432">
                <type>flight</type>
                <flightno>739</flightno>
                <airline>SRN</airline>
                <departure_date>2009-10-17</departure_date>
                <departure_time>19:30</departure_time>
                <arrival_date>2009-10-17</arrival_date>
                <arrival_time>23:40</arrival_time>
                <departurenode>KTW</departurenode>
                <arrivalnode>HRG</arrivalnode>    
            </departure>
            
            <arrival id="13411">
                <type>flight</type>
                <flightno>6543</flightno>
                <airline>KBR</airline>
                <departure_date>2009-10-24</departure_date>
                <departure_time>04:25</departure_time>
                <arrival_date>2009-10-24</arrival_date>
                <arrival_time>08:55</arrival_time>
                <departurenode>HRG</departurenode>
                <arrivalnode>WAW</arrivalnode>
            </arrival>
            
            <arrival id="13384">
                <type>flight</type>
                <flightno>740</flightno>
                <airline>SRN</airline>
                <departure_date>2009-10-25</departure_date>
                <departure_time>00:40</departure_time>
                <arrival_date>2009-10-25</arrival_date>
                <arrival_time>05:00</arrival_time>
                <departurenode>HRG</departurenode>
                <arrivalnode>KTW</arrivalnode>
            </arrival>
        </transport>
        <prices>
            <baseprice>1649</baseprice>    
            <price>
                <type>1CHD [02-15] BP</type>                
                <amount>1319</amount>
                <additional_bed_no>1</additional_bed_no>
                <age_from>2</age_from>
                <age_to>15</age_to>
            </price>
            <price>
                <type>2CHD [02-06] BP</type>                
                <amount>1319</amount>
                <additional_bed_no>2</additional_bed_no>
                <age_from>2</age_from>
                <age_to>6</age_to>
            </price>
            <price>
                <type>2CHD [06-15]</type>                
                <amount>1419</amount>
                <additional_bed_no>2</additional_bed_no>
                <age_from>6</age_from>
                <age_to>15</age_to>
            </price>
            <price>
                <type>AD3</type>                
                <amount>1619</amount>
                <additional_bed_no>0</additional_bed_no>
                <age_from>0</age_from>
                <age_to>0</age_to>
            </price>
            <price>
                <type>INF</type>                
                <amount>50</amount>
                <additional_bed_no>0</additional_bed_no>
                <age_from>0</age_from>
                <age_to>2</age_to>
            </price>
            <price>
                <type>SGL</type>                
                <amount>1919</amount>
                <additional_bed_no>0</additional_bed_no>
                <age_from>0</age_from>
                <age_to>0</age_to>
            </price>
        </prices>
        <optionalcomponents>
        </optionalcomponents>
        <obligatorycomponents>
            <component id="90">
                <description>[*] szczegóły promocji na www.eximtours.pl</description>
                <price>0</price>
                <age_from>0</age_from>
                <age_to>0</age_to>                
                <pricetype>STAY</pricetype>
                <pricetype>ROOM</pricetype>
            </component>
            <component id="84">
                <description>PROMOCJA 1/09[*] - VOUCHER 150 USD</description>
                <price>0</price>
                <age_from>18</age_from>
                <age_to>0</age_to>                
                <pricetype>STAY</pricetype>
                <pricetype>ROOM</pricetype>
            </component>
        </obligatorycomponents>        
    </trip>
</trips>


Znaczniki <trip> </trips>, jak i ich zawartość będzie się powtarzać.

Chciałbym wszystkie wartości do tablic lub zmiennych.

Próbowałem zrobić to za pomocą XMLReader, ale jakoś nie mogę pojąć zasady jego działania, bo siedzę już od 17 i niewiele zdziałałem sad.gif

Dlatego mam olbrzymią prośbę do Was:

moglibyście poprowadzić mnie "za rączkę" do rozwiązania i wszystko wyjaśnić??

Oczywiście, bardzo bym się ucieszył z gotowca, ale na niego nawet nie liczę smile.gif

Dlatego z góry dziękuję za każdą wypowiedź
piotrooo89
wszystkie to znaczy które, co dokładnie chcesz wyciągnąć z tego XML'a? polecam: http://pl.php.net/manual/pl/book.simplexml.php
sweter
Wszystko to co jest między znacznikami i wszystkie atrybuty id.

Z simpleXML już kozystałem, ale mój plik jest dość duży i muszę użyć XMLReadera

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.