Que tal !!!!
  
Tengo una aplicación donde utilizo un arrayobject para agregar, modificar y eliminar una lista de elementos. Para que los elementos no se pierda utilizo una variable de session, pero cuando voy a realizar cambios sobre los elementos se los asigno a un arrayobject que tengo definido en mi controlador.  
Parte del codigo para eliminar: 
 Código PHP:
    public function eliminarformaAction()
{
        $formaEnviada = $this->getRequest()->getParam('id', 0);
        $index = 0;
        $session = new Zend_Session_Namespace();
        $this->_colFormasPago = $session->formasPago;
 
        for($i=0;$i<$this->_colFormasPago->count();$i++){
           if($this->_colFormasPago->offsetGet($i) == $formaEnviada){
                $index = $i;
           }
        }
 
         $this->_colFormasPago->offsetUnset($index);
          
         $this->_forward('agregar');
} 
    
  El problema con el codigo es que siempre me genera el siguiente warning:
"
Undefined offset :" 
Estuve buscando en internet y por lo general dicen que antes de consultar un campo verifique que exista, para lo cual antes del if hice lo siguiente:  
 Código PHP:
    if($this->_colFormasPago->offSetExists($i)){
  //aca va el if que verificar el campo
} 
    
  Lo cual me arroja el mismo mensaje. Antes de hacer las validaciones he realizado el var_dump y los datos estan en la variable. 
Porque razon el indica que no existe el campo ? 
Saludos.