我遇到了一個奇怪的但顯然是有效的XML字符串,我被API返回。我一直在使用SimpleXML解析XML,因爲將它傳遞給函數並將其轉換爲方便的數組非常簡單。PHP SimpleXML元素解析問題
以下是不正確的SimpleXML解析:在
<?xml version="1.0" standalone="yes"?>
<Response>
<CustomsID>010912-1
<IsApproved>NO</IsApproved>
<ErrorMsg>Electronic refunds...</ErrorMsg>
</CustomsID>
</Response>
簡單的XML結果:
SimpleXMLElement Object ([CustomsID] => 010912-1)
有沒有辦法在XML解析這個?還是另一個返回反映XML結構的對象的XML庫?
問題原來是我用php的get_object_vars()函數解構它。由於SimpleXML存儲數據的方式,這個例子中90%的時間工作,但在這個例子中有扼流圈。因此,不是SimpleXML的錯誤,並且手動遍歷它將會起到訣竅的作用。 – 2013-02-19 23:35:45