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; }