PHPでArrayToXMLコンバーターを作成しようとしています。
私はこのコードを持っています:
function assocArrayToXML($root_element_name,$ar) {
$xml = new SimpleXMLElement("<?xml version=\"1.0\"?><{$root_element_name}></{$root_element_name}>");
$f = create_function('$f,$c,$a','
foreach($a as $k=>$v) {
if(is_array($v)) {
$ch=$c->addChild($k);
$f($f,$ch,$v);
} else {
$c->addChild($k,$v);
}
}');
$f($f,$xml,$ar);
return $xml->asXML();
}
http://php.net/manual/es/book.simplexml.phpから
私が抱えている問題は、次の行です。
$xml = new SimpleXMLElement("<?xml version=\"1.0\"?><{$root_element_name}></{$root_element_name}>");
文字列に「?>」が含まれており、php の「考える」が php タグの末尾であるためです。
この2文字をphp文字列に書き込むにはどうすればよいですか?