0
我有一大堆的PHP Web服務構建JSON對象,並使用json_encode
拯救他們。PHP - JSON來的SimpleXML
這工作得很好,但我現在有一個Web服務也可以提供在XML,根據給定參數的要求。
我想如果可能的話,從PEAR XML遠離,並希望找到一個簡單的解決方案,可以用SimpleXML來實現。
任何人都可以給我任何建議嗎?
感謝
我有一大堆的PHP Web服務構建JSON對象,並使用json_encode
拯救他們。PHP - JSON來的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 2017-02-22 00:48:37
是的,它可以用SimpleXml實現。請說明你在尋找什麼樣的建議? – Gordon 2012-03-15 13:07:12
用於轉換你的對象到XML看這個問題:http://stackoverflow.com/questions/137021/php-object-as-xml-document – chiborg 2012-03-15 13:16:03
見上文 - 我想如果可能的話,從PEAR XML望而卻步。我想使用SimpleXML。我只想知道是否有一個簡單的函數,就像json_encode一樣簡單,可以將JSON轉換爲XML。 – adam 2012-03-28 08:19:33