si usas php 5.3 podes usar el SPL osea librerias destinadas a los objetos
ejemplo   
Código PHP:
Ver original$miObjeto = new ArrayObject($_POST
);
//aca le ponemos un Flag que indique que el array que tiene sea convertido a Objetos
$miObjeto->setFlags(ArrayObject::ARRAY_AS_PROPS);
  
si prefieres Create una Clase que haga esto y Ademas retorne un Valor Nulo en caso de que el methodo no exista  bueno yo hce esto hace 8 meses que aun sigo usando    
Código PHP:
Ver original<?php
/**
 * @version 1.0
 * @author tuadmin
 * @copyright 2009
 * @file Object
 */
class Object extends ArrayObject
{
    /**
     * @param array $array
     */
    public function __construct($array)
    {
        parent::__construct($array);
        $this->setFlags(ArrayObject::ARRAY_AS_PROPS);
    }
    
    public function __get($name)
    {
        return null;
    }
}
  
y con mi clase simplemeto hago    
Código PHP:
Ver original<?php
"Nombre" => "Pepe el Wapo",
"especie" => "humano",
"edad" => "25",
"trabajo" => "baila por unas monedas"
));
?>
  
buenoe spero te haya servido aunque el uso de los cast osea (object) son buenas si noe xiste el metodo en cuestion te daran error un fatal o depende de tu version de php pero bueno mi clase Object simplemente lo que ahce es que si no encuentra el objeto te retorna un valor null 
bye bye