2012-04-18 2 views
1

私はXMLをインポートするタスクを書いています。デバッグは、DOMの両方にvar_dumpprint_rリターン一見、空のオブジェクトなどの痛みはそう見て、DOMElementDOMNodeListリストのようなオブジェクトされています一見空のDOMオブジェクトをデバッグするには?

object(DOMElement)#330 (0) {} 
object(DOMNodeList)#335 (0) {} 

をしかし、彼らは私が値を読むことができるように空ではありません。

代わりにどのようなデバッグオプションがありますか?

+0

PHP 5.4にアップグレードすると、より詳しい情報が得られます。あなたが記述しているのは、古いPHP 5.3バージョンの場合だけです。 [PHPでのDOMDocumentオブジェクトのデバッグ](http://stackoverflow.com/questions/684227/debug-a-domdocument-object-in-php)および[PHP XMLの素敵な出力方法](http:// stackoverflow.com/q/8615422/367456)。 – hakre

答えて

2

DomDocument I var_dump xml出力を使用します。 DOMElementについては

var_dump($dom->saveXML()); 

、私は(as seen here)を使用します

var_dump($domElement->ownerDocument->saveXML($domElement)); 

しかしDOMNodeList、私は考えています。おそらくあなたはそれをDomDocumentに添付/追加してからvar_dumpする必要があります。

DomDocumentの内部を表示していないbtwは、reported (here: Reflection)です。

0

ソリューション:私は

function dom_test($DOM) { 
     echo '<h1>'.get_class($DOM).'</h1>'; 
     // easiest way to traverse: 
     echo 'LENGTH: '. @$DOM->length ."\n"; // if NodeList 
     echo 'TAG: '. @$DOM->tagName ."\n"; // if Element 
     echo 'CHILDS: '. @$DOM->childNodes->length ."\n"; // etc. 
    } 

「dom_test自身の監視機能を書いたが、これはあなたを助けることができる願っています!

関連する問題