使用XmlStringStreamer我有一個XML文件,該文件是這樣的XML節點: (文件名:abc.xml)遍歷PHP
<Envelope>
<Body>
<SResponse>
<Body>
<SResponseDetails>
<SItem>...</SItem>
<SItem>...</SItem>
<SItem>...</SItem>
<SItem>...</SItem>
</SResponseDetails>
</Body>
</SResponse>
</Body>
</Envelope>
我要存儲在一個數據庫表中的所有<SItem>
(1項紀錄對於每個SItem)。我正在使用PHP並使用XmlStringStreamer。
這是我讀取這個文件並處理它的代碼。
$streamer = \Prewk\XmlStringStreamer::createStringWalkerParser(__DIR__ . "/tempFile.xml");
$stream = new Stream\File(__DIR__ . "/abc.xml", 1024);
$parser = new Parser\StringWalker();
$streamer = new XmlStringStreamer($parser, $stream);
while ($node = $streamer->getNode()) {
$simpleXmlNode = simplexml_load_string($node);
//-- code here for getting single node
}
我使用XmlStringStreamer並沒有從任何論壇得到任何答案,我也試過,但不能得到我想要的話,任何人都可以請幫助我。
非常感謝。
處理我也試過這個在while循環: 的foreach($ simpleXmlNode-> SResponse->正文 - > SResponseDetails-> SItem爲$項目) 而我得到的每個節點的XmlObject所以,我將XML轉換使用asXML()函數將對象轉換爲xml,但它將字符轉換爲小寫。 – GoalDone
你能提供$ simpleXmlNode樣本值嗎?我會看看是否有時間爲你驗證它? – Star
可以讓我知道如何使用asXML()而不用將文本更改爲小寫。它將xml標籤轉換爲小寫。 – GoalDone