Danny: XML attribute verknüpfen oder Kindelement selektieren

Beitrag lesen

ungetestet:

//irgendwas:CARTECInfo[@Code=1]//irgendwas::Text[@Language=de]

Das Element mit dem Attribut Language gleich de, das irgendwo unterhalb des Elementes CARTECInfo mit dem Attribut Code gleich 1 vorkommt.

Deine Und-Verknüpfung bräuchtest du ja nur dann, wenn Du das CARTECInfo mit Code=1 _und_ Quantity=2 auslesen willst. Soweit ich weiß gehen aber auch logische Verknüpfungen dieser Art, fragst sich nur wie.

zB. //aaa|bbb gibt dir wohl alle Element <aaa> und <bbb> in der Nodelist zurück.

Dank und Gruß,

frankx

Moinsen,
habe es mal ausprobiert:

$query_string="//irgendwas:CARTECInfo[@Code=1]//irgendwas::Text[Language=de];
$node_list = $xml->xpath($query_string);

echo $node_list[0]["Text"];
var_dump($node_list);

bekomme nur eine warnung:

Warning: SimpleXMLElement::xpath() [function.SimpleXMLElement-xpath]: Invalid expression in /mein/root/example.php on line 40
bool(false)

line 40 wäre "$node_list = $xml->xpath($query_string);"

0 57

XML mit PHP ausgeben

Superheld
  • xml
  1. 0
    ChrisB
  2. 0
    frankx
    1. 0
      Superheld
      1. 0
        frankx
        1. 0
          Superheld
          1. 0
            frankx
            1. 0
              Superheld
          2. 0
            frankx
            1. 0
              Superheld
              1. 0
                frankx
                1. 0
                  ChrisB
                  1. 0
                    frankx
                    1. 0
                      Superheld
                      1. 0
                        frankx
                        1. 0
                          Superheld
                          1. 0
                            frankx
                            1. 0
                              Superheld
                              1. 0
                                frankx
                            2. 0
                              Superheld
                              1. 0
                                frankx
                                1. 0
                                  Superheld
                                  1. 0
                                    frankx
                                    1. 0
                                      Superheld
                                      1. 0
                                        frankx
                                        1. 0
                                          Superheld
                                          1. 0
                                            frankx
                                            1. 0
                                              Superheld
                                              1. 0
                                                frankx
                                                1. 0
                                                  Superheld
                                                  1. 0
                                                    frankx
                                                    1. 0
                                                      Superheld
                                                      1. 0

                                                        XML xmlns Namensraum und xpath - query

                                                        frankx
                                                        1. 0
                                                          Superheld
                                                          1. 0
                                                            frankx
                                                            1. 0
                                                              Superheld
                                                            2. 0

                                                              XML attribute verknüpfen

                                                              Danny
                                                              1. 0

                                                                XML attribute verknüpfen oder Kindelement selektieren

                                                                frankx
                                                                1. 0
                                                                  Danny
                                                                  1. 0
                                                                    Superheld
                                                                    1. 0
                                                                      frankx
                                                                      1. 0
                                                                        Superheld
                                                                        1. 0

                                                                          XML Kodierung und Umlaute ersetzen

                                                                          frankx
                                                                          1. 0
                                                                            Superheld
                                                                            1. 0
                                                                              frankx
                                                                              1. 0
                                                                                Superheld
                                                                                1. 0
                                                                                  frankx
                                                                                  1. 0
                                                                                    Superheld
                                                                                    1. 0
                                                                                      frankx
                                                                                      1. 0
                                                                                        Superheld
                                                                                        1. 0

                                                                                          Nodelist und foreach / Iteration

                                                                                          frankx
                                                                                          1. 0
                                                                                            Superheld
                                                                                            1. 0
                                                                                              frankx
                                                                                              1. 0
                                                                                                Superheld
                                                                                                1. 0
                                                                                                  Superheld
                                                                          2. 0
                                                                            Danny
                                                                            1. 0
                                                                              frankx