static function to_xml($array, $element_names) { $xml = "<{$element_names['0']}>\n"; foreach ($array as $key => $value) { if (is_array($value)) { $xml .= xml::to_xml($value, array_slice($element_names, 1)); } else { if (is_object($value)) { $xml .= xml::to_xml($value->as_array(), array_slice($element_names, 1)); } else { $xml .= "<{$key}>{$value}</{$key}>\n"; } } } $xml .= "</{$element_names['0']}>\n"; return $xml; }