-
SimpleXMLを使用する方法:
$obj = new stdClass(); $obj->name = "John"; $obj->age = 30; $xml = new SimpleXMLElement('<root/>'); array_walk_recursive((array)$obj, array($xml, 'addChild')); echo $xml->asXML();
-
XMLWriterを使用する方法:
$obj = new stdClass(); $obj->name = "John"; $obj->age = 30; $xml = new XMLWriter(); $xml->openMemory(); $xml->startDocument('1.0', 'UTF-8'); $xml->startElement('root'); foreach($obj as $key => $value) { $xml->startElement($key); $xml->text($value); $xml->endElement(); } $xml->endElement(); echo $xml->outputMemory(true);
-
DOMDocumentを使用する方法:
$obj = new stdClass(); $obj->name = "John"; $obj->age = 30; $dom = new DOMDocument('1.0', 'UTF-8'); $root = $dom->createElement('root'); $dom->appendChild($root); foreach($obj as $key => $value) { $element = $dom->createElement($key); $element->appendChild($dom->createTextNode($value)); $root->appendChild($element); } $dom->formatOutput = true; echo $dom->saveXML();
これらの方法を使用することで、PHPのオブジェクトをXMLに変換することができます。それぞれの方法は、異なるXML操作ライブラリを使用していますが、どれも効果的にオブジェクトをXMLに変換することができます。選択する方法は、使用しているライブラリや個人の好みによって異なります。