Ausgabe von XML Inhalten in PHP formatiert anzeigen lassen
XML wird häufig in PHP verwendet.
Sollen XML-Inhalte beim Debuggen oder für Anwender schön und übersichtlich formatiert dargestellt werden, kann man das JavaScript code-prettify verwenden.
Die Funktion asdw_echo_xml übernimmt die vollständige Formatierung des XML-Inhaltes.
Das erfolgt direkt am lokalen Gerät. Der Inhalt muss dazu also nicht über das Internet zu einem anderen Server geschickt werden.
function asdw_echo_xml($xml)
{
// Nice function to output a FORMATTED (simple)XML - Object
$dom = new DOMDocument;
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$dom->loadXML($xml->asXML()); //=====$data has the raw xml data...you want to format
echo '<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?autoload=true&skin=sunburst" defer="defer"></script>';
echo "<br/> <pre class=\"prettyprint\" lang-xml id=\"quine\" style=\"border:4px solid #88c\" >". htmlentities($dom->saveXML())."</pre>";
}
Beispiel-Code für asdw_echo_xml:
$string = <<<XML <?xml version='1.0'?> <document> <title>Zweiundvierz...?</title> <from>Joe</from> <to>Jane</to> <body> Ich kenne die Antwort -- aber was ist die Frage? </body> </document> XML; $xml = simplexml_load_string($string); asdw_echo_xml($xml);
ergibt die Ausgabe – XML formatiert:
Die Formatierung dieser Ausgabe kann auch noch angepasst werden.
Eine Beschreibung der code-prettify findet man hier.
