public static function &setXMLTag($xml, $key = 'xml', $params = null, $encoding = 'UTF-8') { if (is_numeric($key)) { $tag = $xml->createElement('item'); $tag->setAttribute('id', $key); } else { $tag = $xml->createElement($key); } if (is_array($params)) { foreach ($params as $key => $value) { $child = self::setXMLTag($xml, $key, $value, $encoding); $tag->appendChild($child); } } else { $params = $params === true ? 'true' : $params; $params = $params === false ? 'false' : $params; $child = Player_Utils::setEncode($params); $tag->appendChild($xml->createTextNode($child)); } return $tag; }