Foros del Web » Programando para Internet » PHP »

mostrar el contenido d una clase

Estas en el tema de mostrar el contenido d una clase en el foro de PHP en Foros del Web. Tengo una clase carrito en la q se van introduciendo los articulos comprados. El código es el siguiente: class Carrito { var $items; // Artículos ...
  #1 (permalink)  
Antiguo 03/02/2005, 10:01
 
Fecha de Ingreso: febrero-2005
Mensajes: 26
Antigüedad: 19 años, 2 meses
Puntos: 0
mostrar el contenido d una clase

Tengo una clase carrito en la q se van introduciendo los articulos comprados. El código es el siguiente:

class Carrito {
var $items; // Artículos en nuestro carrito de la compra

// Añadir $num artículos de tipo $artnr al carro
function add_articulo ($artnr, $num) {
$this->items[$artnr] += $num;
}

// Sacar $num artículos del tipo $artnr del carro
function remove_articulo ($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num;
return true;
} else {
return false;
}
}
}

Pero no sé cómo puedo hacer la función q muestre cada uno de los elementos q hay en el carrito.

Alguién me puede ayudar??
  #2 (permalink)  
Antiguo 03/02/2005, 10:13
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
$items es un array, aasi que has una funcion que simplemente te devuelva $this->$items;

Dentro de una clase no seria bueno que muestres o hagas un echo de algo, simplemente limitate a devolver el array.
Luego haces lo que quieras fuera de la clase.
Código PHP:
function elementos()
{
    if( 
is_array($this->items) ) {
        return 
$this->items;
    } else {
        return 
false;
    }

fuera de la clase podrias hacer algo asi como
[PHP]
$carrito = new Carrito();
$carrito ->add_articulo(******);
$array = $carrito ->elementos();
foreach ($array as $articulo) {
echo $articulo;
}
[PHP]

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:07.