Един набързо написан php class за генериране на xml от php масив.

class xmlGen {

    var $array = array();
    var $xml = '';   
    
    private function strct($array) {
        foreach ($array as $k=>$v) {
        	$tag = $k;
			if(is_int($tag)) $tag = 'a_'.$tag;
            $this->xml .= "<$tag>";
            if (is_array($v)) {
                self::strct($v);
            } else {
                $this->xml .= $v;
            }
            $this->xml .= "</$tag>";
        }
    }
    
    public function gen($array, $root = 'root') {
    	self::strct($array);
        $header = "<?xml version=\"1.0\" encoding=\"utf-8\"?><$root>";
        $footer = "</$root>";       
        echo $header;
        echo $this->xml;
        echo $footer;
    }
    
}
може да се използва по следния начин
$sample = array(
	'zadacha' => array(
		'1' => 'probna',
		'2' => 'product_compile',
	),
	'test' => date('d.m.Y'),
);
include ('array2xml.php');
$xml = new xmlGen();
header ("content-type: text/xml");
echo $xml->gen($sample);
генерираният файл от примера е
<?xml version="1.0" encoding="utf-8"?>
<root>
    <zadacha>
        <a_1>
            probna
        </a_1>
        <a_2>
            product_compile
        </a_2>
    </zadacha>
    <test>
        31.10.2010
    </test>
</root>