Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/04/2010, 09:50
Avatar de juamd
juamd
 
Fecha de Ingreso: marzo-2009
Ubicación: Bogotá
Mensajes: 285
Antigüedad: 15 años, 2 meses
Puntos: 8
Duda con ArrayObject

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.