2012-10-20 9 views
12

私はコースを利用できるウェブサイトにajaxを使用しています。私はxml(コースの詳細があります)を読んで問題が発生しています。 inoutコース名)それが等しいなら私はテキスト(コースの説明)を表示しています。 今私はそれが(xmlファイル内)コース名を修正するために取得するトレースが、入力のコースにそれを比較しながら、私は、XMLファイルをロードしては全く一点so.at比較しない名前を付け、それをエコーし​​ています:xml DOMDocumentを文字列に変換する

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

それは、そう私はこのことからわかることは、私は必要なデータを取得し、それを使用できるように、XML DOMオブジェクトを文字列に変換しなければならないということであるエラーに私に

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

を与えるそれは本当ですか?何らかの方法で私に教えてもらえますか(他の機能など)。

+1

を - 'のようなものを経由してアクセスノードgetElementById()、getElementsByClassName() 'など、' saveXML() 'を使用して文字列を書き出します。 –

答えて

17

DOMDocumentオブジェクトを文字列として使用することはできません。ここで

を使用すると、XML文字列としてDOMDocumentオブジェクトを表示する方法を次のとおりです。

echo $doc->saveXML(); 
4

DOMDocumentは方法SaveHTML()を持っている、正確にあなたが必要なものを行うために設計されています。

次の方法で文書全体を表示することがあります。のような、また、どのようにいくつかのオプションを提供し

$doc->saveHTML($bodyNode); 

DOMDocumnet

はXMLで印刷がどのように強化するために:

$doc->saveHTML(); 

それとも特定のノード

-3

あなたは

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

か、この関数は、文字列値を返します

strval(); 

PHPの関数を使用することができますタイプキャストを使用することができますそれに渡されるパラメータの値。

+1

これに答える前に質問をよく読んでください。* "Catchable fatal error:クラスDOMDocumentのオブジェクトを/home/students/....../www/htdocs/client/unit_details.phpの文字列に変換できませんでした。 23行目* – hakre

3

このお試しください:[ `DOMDocument`](http://us3.php.net/manual/en/class.domdocument.php)はDOM APIを実装

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