jo73: Meldungen in XML nach Kriterien selektieren

Beitrag lesen

Hallo zusammen,

eine kleine Detailfrage zum Thema XML auslesen.

Ich möchte aus auf einem Server bereitgestellen Dokumenten nur Meldungen auf meiner Website darstellen, die unter <codes codetype="thema" nur T/AAA oder T/DDD enthalten.

Hierzu ein Beispiel einer Meldung in XML:

</ElementType>
<ElementType name="version" content="textOnly" model="closed" dt:type="number" />
<ElementType name="uniqueid" content="textOnly" model="closed" dt:type="string" />
<ElementType name="titel" content="textOnly" model="closed" dt:type="string" />
<ElementType name="codes" content="mixed" model="closed">
<AttributeType name="codetype" dt:type="enumeration" dt:values="region land thema" />
<attribute type="codetype" required="yes" />
</ElementType>
<version>1.0</version>
<uniqueid>1234567</uniqueid>
<titel>bla, bla</titel>
<codes codetype="region">D/EU,US/AM,R/AS,K/AF</codes>
<codes codetype="land">D/DEU,E/ENG,O/OEST</codes>
<codes codetype="thema">T/AAA,T/BBB,T/CCC,T/DDD,I/FFF</codes>

So, nun stelle ich derzeit alle Meldungen wie folgt dar, was auch funktioniert:

if(!preg_match('/<titel>(.+?)<\/titel>/is',$xml,$arr)) continue;  
$time = $arr[1];

Wie gesagt möchte ich nun aber weiter einschränken und nur die Meldungen darstellen, welche den codetype thema und hier nur T/AAA und T/DDD haben.

Hier genau habe ich das Problem, um die drei genannten Begriffe wie bereits oben geschildert zu selektieren.

Ich hoffe Ihr könnt mir bei dieser Fragestellung weiterhelfen.

Schon vorab vielen Dank.

Gruß

Jo