/** * Inicializa o venerável objeto $data. * @param array|object $value */ public static function setData($value) { $data = new \stdClass(); // se for o $_REQUEST, converte para objeto $valid = is_object($value) || is_array($value) && count($value); if ($valid) { foreach ($value as $name => $value) { if ($name == '_') { continue; } if (strpos($value, 'json:') === 0) { $value = json_decode(substr($value, 5)); } if (strpos($name, '_') !== false) { list($obj, $name) = explode('_', $name); $data->{$obj}->{$name} = $value; } else { if (strpos($name, '::') !== false) { list($obj, $name) = explode('::', $name); $data->{$obj}->{$name} = $value; } else { $data->{$name} = $value; } } } } Manager::setData($data); }