動かざることバグの如し

近づきたいよ 君の理想に

PHPでJSONをXML形式に変換するスクリプト

PEAR::XML_Serializerというライブラリを利用する

インストール

apt-get install php-pear
pear install --alldeps xml_serializer-beta

スクリプト

適当に関数化してみた

<?php
require_once 'XML/Serializer.php';
function json2xml($json) {
    $options = array (
        'addDecl' => TRUE,
        'encoding' => 'UTF-8',
        'indent' => '   ',
        'rootName' => 'json',
        'mode' => ''
    );
    $serializer = new XML_Serializer($options);
    $obj = json_decode($json);
    if ($serializer->serialize($obj)) {
        return $serializer->getSerializedData();
    }
    else {
        return null;
    }
}
$json = file_get_contents("map.json");
file_put_contents("map.xml", json2xml($json));