2012-03-07 49 views
-3

PHP與SimpleXML的^ h ELP我得到了下面的test.xml與解析

<Segment xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlnssd="http://www.w3.org/2001/XMLSchema"> 
<Elements> 
<Text> 
<Value>XXXXXXXXXXXXXXXXXXXXXXX</Value> 
</Text> 
</Elements> 
<CultureName>XXXXXX</CultureName> 
</Segment> 

我花時間閱讀的SimpleXML和正則表達式的教程,但我沒有得到相應的解析器。需要針對值標記中的值解析test.xml文件。所以最後,我想獲得一個數組或列表中包含值標籤之間的所有單詞。 .xml文件由上面可以看到的幾百個組成。只有XXXXXXX不同。因此,它像:

<Segment xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlnssd="http://www.w3.org/2001/XMLSchema"> 
<Elements> 
<Text> 
<Value>XXXXXXXXXXXXXXXXXXXXXXX</Value> 
</Text> 
</Elements> 
<CultureName>XXXXXX</CultureName> 
</Segment> 
<Segment xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlnssd="http://www.w3.org/2001/XMLSchema"> 
<Elements> 
<Text> 
<Value>YYYYYYYYYYYYYYYYYYYYYY</Value> 
</Text> 
</Elements> 
<CultureName>YYYYYYYY</CultureName> 
</Segment> 
.... 
.... 
.... 

這將是真棒,如果有人可以幫助我得到做了PHP的SimpleXML解析此。

+0

我試着複製粘貼很多例子,然後根據我的文件更改變量。大多數時候,雖然我有奇怪的錯誤告訴我,它不是一個對象或東西。另一次我得到了一個輸出,但它只是像這樣的陣列陣列陣列陣列陣列數百次如 – user1039240 2012-03-07 14:17:21

+0

如果你已經嘗試過一些東西,最好是發佈它,這樣你可以獲得有關特定問題/錯誤的幫助,而不是隻是要求「幫助完成任務」...... – DarkAjax 2012-03-07 14:19:15

+1

'我得到了奇怪的錯誤告訴我,它不是一個對象或其他東西。第1課:非常注意錯誤信息!即使你討厭他們,他們是你最大的朋友,當有什麼東西不起作用的時候 – 2012-03-07 14:19:39

回答

0

如果這是一個格式良好的XML文檔,那麼使用XPath可能會更好。這可能更容易提取:

$results = $simplexmlelement->xpath('/Segment/Elements/Text/Value'); 
+0

究竟是什麼你會認爲形式良好嗎?我會說我的XML文件是完全相反的。它至少對我來說看起來不是很好,並且有7k +行,每行有400多個字符。 – user1039240 2012-03-07 14:28:03

+0

對不起,「結構良好」會更加正確....沒有缺失標籤,奇怪或隨機在那裏,等等。如果SimpleXML可以加載它,它聽起來像是有效的。 – enygma 2012-03-07 14:29:25

+0

想你的代碼,並得到如下錯誤: 說明:未定義變量:的SimpleXMLElement在C:\ XAMPP \ htdocs中\ parser.php第2行 致命錯誤:調用一個成員函數的xpath()一個非對象在第2行的C:\ xampp \ htdocs \ parser.php – user1039240 2012-03-07 14:29:47