PHP XML: XML formatiert anzeigen
Dieser Artikel befasst sich mit dem Problem der Formatierung der XML-Ausgabe von PHP. Im bereitgestellten Code führte das Drucken des XML-Codes in einem Browser zu einer abgeflachten Ausgabe ohne Einrückungen oder Zeilenumbrüche. Um dieses Problem zu lösen, können wir PHP-Funktionen verwenden, um die Formatierung zu verbessern.
Der erste Schritt besteht darin, die Eigenschaften „preserveWhiteSpace“ und „formatOutput“ der DomDocument-Instanz festzulegen:
$doc->preserveWhiteSpace = false; $doc->formatOutput = true;
Durch das Setzen von „preserveWhiteSpace“ auf „false“ werden übermäßige Mengen entfernt Leerzeichen innerhalb des XML, während formatOutput PHP anweist, das XML gemäß seiner Struktur zu formatieren.
Alternativ können diese Eigenschaften sein Wird während der DomDocument-Erstellung festgelegt:
$doc = new DomDocument('1.0'); $doc->preserveWhiteSpace = false; $doc->formatOutput = true;
Das formatierte XML wird jetzt mit korrekter Einrückung und Zeilenumbrüchen angezeigt:
<?xml version="1.0"?> <root> <error> <a>eee</a> <b>sd</b> <c>df</c> </error> <error> <a>eee</a> <b>sd</b> <c>df</c> </error> <error> <a>eee</a> <b>sd</b> <c>df</c> </error> </root>
Zur weiteren Anpassung können wir reguläre Ausdrücke verwenden, um Leerzeichen durch Tabulatoren zu ersetzen :
$xml_string = preg_replace('/(?:^|\G) /um', "\t", $xml_string);
Schließlich können wir auch die Tidy-Erweiterung (falls verfügbar) mit der Tidy_repair_string-Funktion verwenden, um die zu formatieren XML:
tidy_repair_string($xml_string, ['input-xml'=> 1, 'indent' => 1, 'wrap' => 0]);
Diese Methode ermöglicht eine präzise Steuerung der Einrückungsstufen, erzeugt jedoch keine Tabulatoreinrückung.
Das obige ist der detaillierte Inhalt vonWie kann ich die XML-Ausgabe von PHP richtig formatieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!