2014-02-19 58 views
0

我試圖運行PHP腳本解析谷歌日曆XML和我不斷收到以下錯誤:PHP致命錯誤:調用一個成員函數asXML()一個非對象

Call to a member function asXML() on a non-object in /index.php on line 120

這裏的一個鏈接到我的代碼(我註明了120線 - 它是線上巴士上的線)http://pastebin.com/bMHXfbkD

任何有任何想法/修復的人將不勝感激!

UPDATE @Clover和@Phil建議我刪除有問題的線路,我做到了,並得到了這一點:

注意:試圖讓在/ Library/WebServer的非對象的屬性/文檔上線/index2.php 125

警告:在/Library/WebServer/Documents/index2.php爲的foreach()提供在線路125

+0

*「我已經記譜線120「* - 哪裏?你可能沒有在創建'SimpleXMLElement'時檢查錯誤。請參閱http://php.net/simplexml_load_file#refsect1-function.simplexml-load-file-errors – Phil

+0

@Pil它是pastebin鏈接上的第38行。感謝您查看我正在查看的鏈接。 – reelrootsryran

+0

我也建議你啓用'display_errors'並將'error_reporting'設置爲'E_ALL'進行開發。第38行('$ xml-> asXML()')即使沒有錯誤也不會做任何事情,所以我什至不明白爲什麼它在那裏 – Phil

回答

0

simplexml_load_file函數可以返回FALSE無效的參數,因此使用前進行測試它。

順便說一句,你的情況,只是刪除線,但它並無中生有:)

+0

謝謝,我嘗試刪除該行。當我這樣做時,我更新了我的問題。 – reelrootsryran

+0

'if($ xml!== false){foreach($ xml-> entry ...)...} – clover

-1

使用嘗試捕捉,而不是使用異常類,嘗試的Throwable類

+0

這與這個問題有什麼關係? 'Throwable'只適用於PHP 7,並且在提出這個問題時,沒有PHP 7 –

相關問題