mrlz777 rašė: > noreciau nuskaityti XML faila (tei p5 formatu) ir susidet ji i db. > Esme, kad ten yra rislus tekstas, bet kiekvienas zodis morfologiskai > suzymetas, skyrybos zenklai ir tarpai tarp <pc></pc> tagu. > > Reiktu: > 1. Atskirai i lenteles susideti atributu "lemma", "ana" reiksmes, ir > pati zodi. > 2. I lentele issisaugoti ir visa sakini. > > Kaip pasiulytumet toki varianta realizuot? :) > > Siaip radau, kad su $xml = simplexml_load_file("test.xml"); gali > pasidaryti objekta, ir tada gali gauti atributu reiksmes, zodi ir pan. > Pvz. su print $xml->text->body->p->w[1]['lemma']; gautume lemma reiksme > "vadovas" ir t.t. Variantų daug. XML/DOM parser'ių/reader'ių net keletas, būdų, kaip jais įvairiai pasinaudoti — apstu. Tačiau visų pirma pačiam turbūt tikrai būtų naudinga pastudijuoti XPath ir XSLT. $xml = new SimpleXMLElement($string); $nodes = $xml->xpath("//p/child::*"); $sen = ''; while(list(, $node) = each($nodes)) { $sen .= $node; if ($node->getName() == 'w') { $word = $node; $ana = $node['ana']; $lemma = $node['lemma']; // DB write word with attr. } elseif ($node->getName() == 'pc') { // end of sentence if (preg_match('/\.|!|;/', $node)) { // DB write sentence $sen = ''; } } }