2012-02-28 4 views
1

を出力します。 asXMLが期待どおりに動作していません。SimpleXMLElement-> asXML()私はXMLにオブジェクト階層を変換するPHP関数を有するバッドストリング

  $oReportXML = new SimpleXMLElement("<report></report>"); 
    $oReportXML->addChild('details'); 
    $oReportXML->addChild('configuration'); 
    $oReportXML->addChild('datasources'); 
    $oReportXML->addChild('styles'); 
    $oReportXML->addChild('classes'); 
    $oReportXML->addChild('tables'); 

    $oReportXML->details->addChild('author',$this->iAuthor); 
    $oReportXML->details->addChild('date_created',$this->iDateCreated); 
    $oReportXML->details->addChild('date_modified',$this->iLastModifiedDate); 
    $oReportXML->details->addChild('modified_by',$this->iLastModifiedBy); 
    $oReportXML->details->addChild('id',$this->iReportID); 
    print_r($this); 
    print "<p>".$oReportXML->asXML()."</p>"; 

だろう出力この:

Report Object ([iAuthor] => 1 [iDateCreated] => 11 [iLastModifiedDate] => 1330435328 [iLastModifiedBy] => 1378 [iReportID] => 0 [sSubject] => sSubject [iCategory] => iCategory [sKeywords] => sKeywords [sDescription] => sDescription [sTitle] => IGNORE_ME [aTables] => Array () [aClasses] => Array () [aDataSources] => Array () [aStyles] => Array () [oParent:private] =>) 

111133043532813780 
+0

引用符付きコードはPHPでうまく機能します。 – Electronick

+0

あなたは出力を確認するために何を使用していますか?ちょうどhidiingタグあなたのブラウザかもしれません? – Electronick

+0

新しいDomDocument()を試してください。 phpでは、これよりもはるかに簡単です –

答えて

3
print "<p>".htmlentities ($oReportXML->asXML())."</p>"; 

を表示するブラウザに伝えるために、私はあなたがソースに見れば、XMLがそこにある、しかし、あなたはブラウザ経由でそれを探しているので、すべてのタグを閉じてしまった、あなたが見ていると思いますテキストノードのみ。

+0

を視覚化する代わりに

を使用することができます –
                        
                            
                                
                            
                        
                    

0

ブラウザで出力を探しているなら、あなたは値のみが表示されますブラウザがタグを視覚化していないとして、これはなぜ誰も教えてもらえます。ソースコードを見たり、ヘッダー( 'Content-type:text/xml')を追加してください。それはXML

関連する問題