XML parsen!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • unset
    replied
    Originally posted by AmicaNoctis View Post
    OffTopic:


    Die haben den Nachteil, dass du Hierarchien wieder auflösen musst. JSON ist in diesem Zusammenhang auch ein guter Kompromiss.
    *Cem stimmt dem zu*

    Leave a comment:


  • Quetschi
    replied
    OffTopic:
    Originally posted by AmicaNoctis View Post
    Die haben den Nachteil, dass du Hierarchien wieder auflösen musst.
    Das meinte ich mit "wenn es irgendwie geht" und ein so großer Nachteil ist das nicht - was ist schon groß dabei, wenn man die Daten dann z.b. wieder via Array weiterverarbeitet.
    Originally posted by AmicaNoctis View Post
    JSON ist in diesem Zusammenhang auch ein guter Kompromiss.
    Nicht um sooo viel besser, aber ja
    Last edited by Quetschi; 24-03-2010, 14:31.

    Leave a comment:


  • AmicaNoctis
    replied
    OffTopic:
    Originally posted by Quetschi View Post
    Wenn es irgendwie geht, sind mir Csv-Daten dann lieber.
    Die haben den Nachteil, dass du Hierarchien wieder auflösen musst. JSON ist in diesem Zusammenhang auch ein guter Kompromiss.

    Leave a comment:


  • Quetschi
    replied
    OffTopic:
    Xml-Dateien in der Größenordnung mag ich irgendwie eh nicht (zumindest nicht in Webanwendungen). Bei 1MB ist mir der Overhead noch eher egal, bei 30MB kann es bei Xml aber durchaus vorkommen, dass 20MB für die Verpackung draufgehen. Wenn es irgendwie geht, sind mir Csv-Daten dann lieber.

    Leave a comment:


  • ezkimo
    replied
    Originally posted by TriphunEM View Post
    @ezkimo: jap aber bei 30 mb, geht das leider nicht mit der kompletten übergabe...außerdem will ich das mit php verarbeiten, und nicht in html ausgeben und dann mit js auslesen...das bringt keine punkte!
    Was hat das jetzt mit HTML und JS zu tun? DomDocument ist eine Klasse aus der DOM Extension von PHP.

    Leave a comment:


  • TriphunEM
    replied
    PHP Code:
         $reader = new XMLReader();
         
    $reader->open('test.xml');
         while (
    $reader->read()) {
            if ((
    $reader->depth == 2) && ($reader->nodeType==XMLREADER::ELEMENT)) {
                echo 
    $reader->readInnerXML();  
            }
         } 
    so läufts...perfekt! danke!

    Leave a comment:


  • AmicaNoctis
    replied
    Gibt's noch nicht. Du benutzt erst open und dann immer read und für jedes Element holst du dir die Attribute. So schwer ist es auch nicht, wenn man das Handbuch nebenbei offen hat.

    Edit: Korrektur: Beispiele gibt es genug in den Nutzerkommentaren.
    Last edited by AmicaNoctis; 24-03-2010, 13:28.

    Leave a comment:


  • TriphunEM
    replied
    Ah ok...wo finde ich ein Beispiel dafür?

    Leave a comment:


  • AmicaNoctis
    replied
    Originally posted by TriphunEM View Post
    der $reader->??? hat aber leiter keine methode der mir ab dem knoten einfach den untergeordneten XML-Code liefert! Oder doch?
    Doch, read(Inner|Outer)XML().

    Leave a comment:


  • TriphunEM
    replied
    @AmicaNoctis: Ja, damit hab ich es auch schon probiert.

    der $reader->??? hat aber leiter keine methode der mir ab dem knoten einfach den untergeordneten XML-Code liefert! Oder doch?

    @ezkimo: jap aber bei 30 mb, geht das leider nicht mit der kompletten übergabe...außerdem will ich das mit php verarbeiten, und nicht in html ausgeben und dann mit js auslesen...das bringt keine punkte!

    Leave a comment:


  • ezkimo
    replied
    Das DomDocument Objekt bietet hierfür die Methode getElementsByTagName(). Damit bekommst Du ein DomNodeList Objekt, welches Du dann durchlaufen kannst. Eigentlich recht easy ... aber auch dafür musst Du vorher die gesamte XML Struktur an das DomDocument übergeben.

    Leave a comment:


  • AmicaNoctis
    replied
    Hallo,

    wenn du kein komplettes DOM willst, aber die zusätzliche Handarbeit nicht scheust, kannst du auch PHP: XMLReader - Manual nehmen.

    Gruß,

    Amica

    Leave a comment:


  • TriphunEM
    replied
    @streuner: wie man xml parst weiß ich im grund. ich hab doch geschrieben was ich genau will, nicht?

    @Quetschi: ja, aber hier muss ich auch erst das ganze xml einlesen, also auch nicht das was ich will...

    Leave a comment:


  • Quetschi
    replied
    An die Knoten kommst du z.B. mit einer xPath-Abfrage -> PHP: DOMXPath - Manual - für den Rest google mal nach Begriffen wie xml2array.

    Leave a comment:


  • streuner
    replied
    Let me google that for you

    mfg streuner

    Leave a comment:

Working...
X