static function PrintValue($array, $useCDATA = true) { $xml = ''; if (is_array($array)) { foreach ($array as $key => $value) { if (is_null($value)) { continue; } else { if (is_array($value)) { if (is_numeric($key)) { $xml .= Respond::PrintValue($value, $useCDATA) . "\n"; } else { $xml .= "<{$key}>" . Respond::PrintValue($value, $useCDATA) . "</{$key}>\n"; } } else { if ($useCDATA) { $xml .= "<{$key}><![CDATA[" . Respond::escapeCData($value) . "]]></{$key}>\n"; } else { $xml .= "<{$key}>" . htmlspecialchars($value) . "</{$key}>\n"; } } } } } return $xml; }