Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: d91 en 6 Octubre 2016, 16:07 PM

Título: Como recorrer un array de objetos
Publicado por: d91 en 6 Octubre 2016, 16:07 PM
Hola intento crear un array de objetos pero no se como recorrerlo cuando ya lo he llenado tal vez alguien me pueda ayudar aqui el codigo
Código (php) [Seleccionar]

$sql = "select Id_producto, Id_proveedor, Id_tipo, nombre from producto where Id_producto = '{$id}'";
    $select = mysqli_query($db,$sql);
    $array = mysqli_fetch_array($select);

    $objeto = new Producto();
       $objeto->setIdProducto($array["Id_producto"]);
       $objeto->setIdProveedor($array["Id_proveedor"]);
       $objeto->setIdTipo($array["Id_tipo"]);
       $objeto->setNombre($array["nombre"]);

    if(empty($canasta)){
        $canasta[0] = $objeto;
        $cont = count($canasta);
        //$_SESSION["cont"] = count($_SESSION["Canasta"]) + 1;
      }
      else
      {
        $i = $cont;
        $canasta[$i] = $objeto;
        $cont++;
        //$i = $_SESSION["cont"];
        //$_SESSION["Canasta"][$i] = serialize($objeto);
        //$_SESSION["cont"] = $i + 1;
      }

con el var_dump muestra que si se esta llenando pero no se como hacerlo con for / foreach


Ahora lo intento de esta manera:
Código (php) [Seleccionar]

$sql = "select Id_producto, Id_proveedor, Id_tipo, nombre from producto where Id_producto = '{$id}'";
    $select = mysqli_query($db,$sql);
    $array = mysqli_fetch_array($select);

    $objeto = new Producto();
       $objeto->setIdProducto($array["Id_producto"]);
       $objeto->setIdProveedor($array["Id_proveedor"]);
       $objeto->setIdTipo($array["Id_tipo"]);
       $objeto->setNombre($array["nombre"]);

    if(!isset($_SESSION["Canasta"])){
        $_SESSION["Canasta"][0] = $objeto;
        $_SESSION["cont"] = count($_SESSION["Canasta"]) + 1;
       
      }
      else
      {
        $i = $_SESSION["cont"];
        $_SESSION["Canasta"][$i] = $objeto;
        $_SESSION["cont"] = $i + 1;
      }


pero en la segunda iteracion me lanza una excepcion __PHP_incomplete_CLASS al visualizarlo ocn var_dump

MOD: No hacer doble post.