/** * Remove um objeto do banco de dados através de sua chave primária. * Caso a sua chave primária não exista, o objeto do banco de dados * será excluído tendo como where, toda sua estrutura. * * @return int */ public function delete() { if (!empty($this->primaryKey)) { return $this->tableGateway->delete([$this->primaryKey => $this->getId()]); } else { return $this->tableGateway->delete(Extractor::extract($this)); } }