private function formateData($data)
 {
     if (!isset($data)) {
         return $data;
     }
     if (is_string($data) && $data == '0000-00-00 00:00:00') {
         return null;
     } elseif (is_numeric($data)) {
         return $data + 0;
     } elseif (MY_Controller::isValidDate($data)) {
         return date('Y-m-d\\TH:i:s.z\\Z', strtotime($data));
     } elseif (is_array($data)) {
         foreach ($data as $i => $val) {
             $data[$i] = $this->formateData($val);
         }
     } elseif (is_object($data)) {
         $field = get_object_vars($data);
         foreach ($field as $f => $val) {
             $data->{$f} = $this->formateData($val);
         }
     }
     return $data;
 }