Mit der rasanten Entwicklung des Internets steigt die Nachfrage nach Datenaustausch. Allerdings können Datenformate zwischen verschiedenen Systemen inkonsistent sein, was den Datenaustausch erschwert. Daher steigt auch die Notwendigkeit, ein Datenformat in ein anderes zu konvertieren.
PHP ist eine häufig verwendete serverseitige Programmiersprache, die fast alle Datenformatkonvertierungen wie JSON, XML, CSV usw. unterstützt. Unter diesen sind JSON und XML häufig verwendete Datenformate, die Daten im Textformat bzw. Tag-Format darstellen. Beim Datenaustausch haben sowohl JSON als auch XML einen äußerst hohen Anwendungswert. Dieser Artikel konzentriert sich auf die Konvertierung des JSON-Formats in das XML-Format in PHP.
1. Eigenschaften von JSON- und XML-Formaten
Das JSON-Format (JavaScript Object Notation) ist ein leichtes Datenaustauschformat, das Daten im Textformat darstellt. Das JSON-Format wurde ursprünglich von Douglas Crockford vorgeschlagen. Es unterstützt die Serialisierung und Deserialisierung von Daten und kann Daten problemlos in JavaScript-Objekte konvertieren. Die Merkmale des JSON-Formats sind:
Das XML-Format (Extensible Markup Language) ist eine Auszeichnungssprache, die Daten im Tag-Format darstellt. Das XML-Format wurde ursprünglich vom W3C vorgeschlagen. Es unterstützt die Serialisierung und Deserialisierung von Daten und kann Daten problemlos in Objekte und Datenstrukturen konvertieren. Die Merkmale des XML-Formats sind:
2. JSON- und XML-Formatkonvertierung in PHP
In PHP können Sie das JSON-Format über die integrierte Funktion in das XML-Format konvertieren Verwenden Sie zur Konvertierung die Klassenbibliothek eines Drittanbieters. Im Folgenden stellen wir vor, wie Sie das JSON-Format mithilfe der in PHP integrierten Funktionen in das XML-Format konvertieren.
json_decode()-Funktion wird verwendet, um das JSON-Format in ein PHP-Objekt oder -Array zu konvertieren. Es unterstützt einen zweiten Parameter zum Festlegen des Rückgabewerttyps. Wenn der zweite Parameter wahr ist, wird ein Array zurückgegeben; andernfalls wird ein Objekt zurückgegeben. Das Folgende ist die Syntax der Funktion json_decode():
mixed json_decode(string $json, bool $assoc = false, int $depth = 512, int $options = 0);
Unter diesen gibt der Parameter $json die zu dekodierende JSON-Zeichenfolge an, und der Parameter $assoc gibt den Rückgabewerttyp an false, gibt das Rückgabeobjekt an. Der Parameter $ Depth gibt die maximale Tiefe dekodierter Daten an, der Standardwert ist 512 und der Parameter $options gibt Dekodierungsoptionen an.
Beispielcode:
$json_str = '{"name":"Jone Doe","age":28,"sex":"male"}'; $json_obj = json_decode($json_str); print_r($json_obj);
Ausgabeergebnis:
stdClass Object ( [name] => Jone Doe [age] => 28 [sex] => male )
SimpleXMLElement SimpleXMLElement(string $data, int $options = 0, string $ns = "", bool $is_prefix = false);
$xml = new SimpleXMLElement('<root></root>'); $xml->addChild('name', 'Jane'); $xml->addChild('age', '23'); print($xml->asXML());
<?xml version="1.0"?> <root> <name>Jane</name> <age>23</age> </root>
<?php header("Content-type: text/xml"); $json_str = '{"name":"Jone Doe","age":28,"sex":"male"}'; $json_obj = json_decode($json_str); $xml_str = '<root></root>'; $xml_obj = new SimpleXMLElement($xml_str); foreach ($json_obj as $key => $value) { $xml_obj->addChild($key, $value); } print($xml_obj->asXML()); ?>
<?xml version="1.0"?> <root> <name>Jone Doe</name> <age>28</age> <sex>male</sex> </root>
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie PHP JSON in das XML-Format. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!