2012-10-20 139 views
12

您好,我正在使用ajax顯示可用課程的網站,我遇到了一個問題,我正在閱讀xml(具有課程詳細信息)獲取節點值(課程名稱)與我的輸入相比較在課程名稱中)如果相等,我顯示文本(課程描述)。 現在我跟蹤它得到糾正課程名稱(xml文件),但它同時比較輸入課程名稱其不是在所有比較so.at一點我加載XML文件並呼應它:將xml DOMDocument轉換爲字符串

$doc->load('data/ICT.xml'); 
echo"$doc"; 

它給了我一個錯誤

Catchable fatal error: Object of class DOMDocument could not be converted to string in /home/students/....../www/htdocs/client/unit_details.php on line 23

所以我從這個理解是,XML DOM對象應該被轉換成字符串,這樣我就可以得到所需的數據,並使用它,是真的嗎?如果是的話,可以有人告訴我如何這樣做請(像任何功能等)預先感謝:-)

+1

['DOMDocument'](http://us3.php.net/manual/en/class.domdocument.php)實現了DOM API - 經由之類的接入節點' getElementById(),getElementsByClassName()'等,並使用'saveXML()'寫出一個字符串。 –

回答

17

DOMDocument對象不能用作字符串。

這裏是你將如何顯示DOMDocument對象作爲XML字符串:

echo $doc->saveXML(); 
-3

您可以使用Type鑄造

$doc->load('data/ICT.xml'); 
$doc2=(string)$doc; 
echo $doc2; 

或者您可以使用PHP函數

strval(); 

該函數返回的字符串值傳遞給它的參數。

+1

你應該在回答之前更好地閱讀這個問題:*「可捕獲致命錯誤:類DOMDocument的對象無法轉換爲/home/students/....../www/htdocs/client/unit_details.php中的字符串第23行「* – hakre

3

嘗試這種情況:

$xml = $doc->saveXML($doc->documentElement);