JSONオブジェクトを構築してjson_encode
を使用してそれらを配信するPHP Webサービスがたくさんあります。PHP - JSON to SimpleXML
これはうまくいきましたが、Webサービスが特定のパラメータに応じてXMLで配信できるという要件が追加されました。
可能であればPEAR XMLから遠ざかり、SimpleXMLで実装できる簡単なソリューションを見つけてください。
誰でも助言をいただけますか?
おかげ
JSONオブジェクトを構築してjson_encode
を使用してそれらを配信するPHP Webサービスがたくさんあります。PHP - JSON to SimpleXML
これはうまくいきましたが、Webサービスが特定のパラメータに応じてXMLで配信できるという要件が追加されました。
可能であればPEAR XMLから遠ざかり、SimpleXMLで実装できる簡単なソリューションを見つけてください。
誰でも助言をいただけますか?
おかげ
あなたはjson_decode($json,true)
を使用して連想配列を作成し、XMLに変換するには、次の機能を試すことができます。
function assocArrayToXML($root_element_name,$ar)
{
$xml = new SimpleXMLElement("<?xml version=\"1.0\"?><{$root_element_name}></{$root_element_name}>");
$f = 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();
}
// usage
$data = json_decode($json,true);
echo assocArrayToXML("root",$data);
いくつかのテストなどを追加しました:https://github.com/mevdschee/json2xml.php – mevdschee
はい、SimpleXmlで実装できます。どのようなアドバイスをお探しですか? – Gordon
オブジェクトをXMLに変換するには、次の質問を参照してください。http://stackoverflow.com/questions/137021/php-object-as-xml-document – chiborg
上記を参照してください。可能であれば、私はPEAR XMLから遠ざかりたいと思います。私はSimpleXMLを使いたい。 JSONをXMLに変換するjson_encodeのような簡単な関数があるかどうかを知りたいだけです。 – adam