/**
  * Generates an XML-RPC param from the value and adds it to the method params
  * @param mixed The value to be converted to XML-RPC notation
  */
 function create(&$value, $type = '')
 {
     $data = '';
     if ($type == '') {
         require_once DOM_XMLRPC_INCLUDE_PATH . 'dom_xmlrpc_utilities.php';
         $type = dom_xmlrpc_utilities::getTypeFromValue($value);
     }
     switch ($type) {
         case DOM_XMLRPC_TYPE_STRING:
         case DOM_XMLRPC_TYPE_INT:
         case DOM_XMLRPC_TYPE_I4:
         case DOM_XMLRPC_TYPE_DOUBLE:
         case DOM_XMLRPC_TYPE_BOOLEAN:
         case DOM_XMLRPC_TYPE_BASE64:
         case DOM_XMLRPC_TYPE_DATETIME:
             $data .= $this->createScalar($value, $type);
             break;
         case DOM_XMLRPC_TYPE_STRUCT:
             $data .= $this->createStruct($value, $type);
             break;
         case DOM_XMLRPC_TYPE_ARRAY:
             $data .= $this->createArray($value, $type);
             break;
     }
     return $data;
 }
 /**
  * Returns the type of the specified param
  * @param mixed The param to be tested
  * @return string The type of the specified param
  */
 function getParamType($param)
 {
     require_once DOM_XMLRPC_INCLUDE_PATH . 'dom_xmlrpc_utilities.php';
     return dom_xmlrpc_utilities::getTypeFromValue($param);
 }